/* ============================================================
   LifeFolder — Add Document (Upload & Review)
   ============================================================ */
.add-doc__cols { display: flex; gap: 28px; align-items: flex-start; margin-top: 6px; }
.add-doc__upload { width: 460px; flex: none; }
.add-doc__review { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 14px; }

.add-dropzone { display: flex; flex-direction: column; align-items: center; text-align: center; border: 1.5px dashed var(--color-line); border-radius: 16px; background: var(--color-surface); padding: 48px 20px; cursor: pointer; position: relative; transition: border-color .15s, background .15s; }
.add-dropzone:hover { border-color: var(--color-selected); background: var(--color-bg); }

/* Datei-Vorschau (nach der Wahl) — Bild oder PDF, client-seitig */
.add-preview__frame { border: 1px solid var(--color-line); border-radius: 16px; overflow: hidden; background: var(--color-line-soft); min-height: 460px; display: flex; align-items: center; justify-content: center; }
.add-preview__img { max-width: 100%; max-height: 560px; display: block; }
.add-preview__pdf { width: 100%; height: 560px; border: none; background: #fff; }
.add-preview__bar { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-top: 12px; }
.add-preview__name { min-width: 0; font-size: 13.5px; font-weight: 600; color: var(--color-ink); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.add-preview__change { display: inline-flex; align-items: center; gap: 6px; flex: none; border: 1px solid var(--color-line); background: var(--color-surface); color: var(--color-ink); border-radius: 9px; padding: 7px 11px; font-size: 12.5px; font-weight: 600; cursor: pointer; }
.add-preview__change:hover { background: var(--color-line-soft); }
/* display:flex/block würde das hidden-Attribut überschreiben — explizit ausblenden */
.add-dropzone[hidden], .add-preview__img[hidden], .add-preview__pdf[hidden] { display: none; }
.add-dropzone__input { position: absolute; inset: 0; opacity: 0; cursor: pointer; }
.add-dropzone__icon { width: 56px; height: 56px; border-radius: 15px; background: var(--status-valid-bg); color: var(--color-muted-2); display: flex; align-items: center; justify-content: center; }
.add-dropzone__title { font-size: 15px; font-weight: 700; margin-top: 12px; word-break: break-word; }
.add-dropzone__hint { font-size: 13px; color: var(--color-muted-2); margin-top: 6px; }
.add-dropzone__secure { display: inline-flex; align-items: center; gap: 6px; font-size: 12px; color: var(--color-muted-2); margin-top: 12px; }

/* Kamera-Weg (PWA/Mobil): nur auf Touch-Geräten zeigen. Muss ÜBER dem
   unsichtbaren Datei-Input (inset:0) liegen, sonst ist er nicht klickbar. */
.add-dropzone__camera { display: none; }
@media (hover: none) and (pointer: coarse) {
  .add-dropzone__camera {
    position: relative; z-index: 1;
    display: inline-flex; align-items: center; gap: 7px; margin-top: 12px;
    padding: 9px 16px; border: 1px solid var(--color-line); border-radius: 10px;
    background: var(--color-surface); color: var(--color-ink);
    font-size: 13px; font-weight: 600; cursor: pointer;
  }
}

.add-steps { list-style: none; margin: 18px 0 0; padding: 0; display: flex; flex-direction: column; gap: 10px; }
.add-steps li { display: flex; align-items: center; gap: 10px; font-size: 14px; color: var(--color-muted); }
.add-steps__n { width: 24px; height: 24px; flex: none; border-radius: 50%; background: var(--color-selected-soft); color: var(--color-selected); font-size: 12px; font-weight: 700; display: flex; align-items: center; justify-content: center; }

.add-doc__note { display: flex; align-items: center; gap: 7px; font-size: 12.5px; color: var(--color-muted-2); }
.add-doc__actions { display: flex; justify-content: flex-end; gap: 10px; margin-top: 8px; }

/* Zusammenfassung erscheint erst, wenn der Nutzer KI-Vorschläge übernimmt. */
.add-doc__summary { margin: 0; padding: 12px 14px; border-radius: 11px; background: var(--ask-ai-bg); color: var(--color-ink); font-size: 13.5px; line-height: 1.5; }

.field__input--ai { border-color: var(--color-ai); box-shadow: 0 0 0 3px color-mix(in srgb, var(--color-ai) 14%, transparent); }

@media (max-width: 820px) {
  .add-doc__cols { flex-direction: column; }
  .add-doc__upload { width: 100%; }
  .add-preview__frame { min-height: 320px; }
  .add-preview__img { max-height: 380px; }
  .add-preview__pdf { height: 380px; }
}
