body { font-family: system-ui, -apple-system, Segoe UI, Roboto, sans-serif; margin: 0; }
.container { max-width: 760px; margin: 2rem auto; padding: 0 1rem; }
.hidden { display: none; }
label { display: block; margin: 1rem 0; }
select, input[type=date], textarea { width: 100%; padding: .5rem; font-size: 1rem; }
.actions { display: flex; gap: .75rem; margin-top: 1rem; }
button { padding: .6rem 1rem; border-radius: .5rem; border: 1px solid #ddd; background: #f7f7f7; cursor: pointer; }
button.primary { background: #1a73e8; color: white; border-color: #1a73e8; }
.toast { position: fixed; right: 1rem; bottom: 1rem; background: #333; color: #fff; padding: .7rem 1rem; border-radius: .4rem; opacity: .95; }
.toast.error { background: #b00020; }
.edit-panel { border: 1px dashed #cbd5f5; background: #fbfdff; padding: 1rem; border-radius: .75rem; margin: 1rem 0; }
.edit-panel h2 { margin: 0 0 .25rem 0; }
.edit-panel .muted { margin: 0 0 .75rem 0; color: #4b5563; }
.edit-row { border: 1px solid #e5e7eb; border-radius: .5rem; padding: .75rem; background: #fff; margin-bottom: .75rem; }
.edit-row .field-submitter { font-weight: 600; }
.edit-row small { color: #6b7280; display: block; margin-top: .25rem; word-break: break-all; }
.edit-row .fields { display: flex; flex-wrap: wrap; gap: .75rem; margin-top: .5rem; }
.edit-row .field-group { flex: 1 1 220px; }
.edit-row .field-label { font-size: .8rem; font-weight: 600; color: #374151; margin-bottom: .25rem; }
.edit-row select, .edit-row input[type=date] { width: 100%; margin: 0; }
.edit-actions { margin-top: .5rem; }
.muted { color: #6b7280; }
