.project-backup-layer { position: relative; z-index: 76; margin: 1rem 0; }
.project-backup { display: grid; gap: .75rem; padding: 1rem; border: 1px solid color-mix(in srgb, var(--line, #cbd5e1) 72%, #0369a1); border-radius: 1rem; background: var(--panel, #fff); color: var(--ink, #172033); }
.project-backup h2 { margin: 0; font-size: 1.05rem; }
.project-backup__warning, .project-backup__help { margin: 0; color: var(--muted, #526070); }
.project-backup__form { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .5rem; }
.project-backup__form textarea, .project-backup__form input { min-width: 0; padding: .6rem .7rem; border: 1px solid var(--line, #cbd5e1); border-radius: .55rem; font: inherit; background: var(--surface, #fff); color: inherit; }
.project-backup__sections { display: grid; gap: .45rem; grid-column: 1 / -1; }
.project-backup__sections label { display: grid; grid-template-columns: minmax(8rem, 1fr) minmax(5rem, .45fr) minmax(5rem, .45fr); align-items: center; gap: .45rem; }
.project-backup__actions { display: flex; flex-wrap: wrap; gap: .45rem; grid-column: 1 / -1; }
.project-backup__status { margin: 0; font-weight: 700; }
.project-backup > [data-backup-json] { min-height: 10rem; width: 100%; padding: .7rem; border: 1px solid var(--line, #cbd5e1); border-radius: .55rem; font: .82rem/1.45 ui-monospace, SFMono-Regular, Menlo, monospace; background: var(--surface, #fff); color: inherit; resize: vertical; }
@media (max-width: 640px) { .project-backup__form { grid-template-columns: 1fr; } .project-backup__sections label { grid-template-columns: 1fr; align-items: stretch; } }
@media (forced-colors: active) { .project-backup { border: 2px solid CanvasText; background: Canvas; color: CanvasText; } .project-backup__form input, .project-backup > [data-backup-json] { border: 1px solid CanvasText; background: Canvas; color: CanvasText; } }
@media print { .project-backup-layer { display: none !important; } }
