body { font-family: system-ui, sans-serif; margin: 0; color: #222; background: #fafafa; }
.topbar { display: flex; gap: 1.5rem; align-items: center; padding: .6rem 1rem; background: #1f3a5f; color: #fff; }
.topbar a { color: #fff; margin-right: 1rem; }
.topbar form { margin-left: auto; }
main { padding: 1rem 1.5rem; max-width: 1100px; }
table { border-collapse: collapse; width: 100%; background: #fff; margin-bottom: 1.5rem; }
th, td { border: 1px solid #ccc; padding: .4rem .6rem; text-align: left; vertical-align: top; }
th { background: #eee; }
form.inline { display: inline-flex; gap: .6rem; align-items: center; margin: .3rem 0; }
form.stack { display: flex; flex-direction: column; gap: .6rem; max-width: 20rem; }
.alert { padding: .5rem .8rem; border-left: 4px solid; margin: .5rem 0; }
.alert-ok { background: #e6f4ea; border-color: #2e7d32; }
.alert-error { background: #fdecea; border-color: #c62828; }
.alert-hint { background: #fff8e1; border-color: #f9a825; }
.status { padding: .1rem .5rem; border-radius: .6rem; font-size: .9em; }
.status-angelegt { background: #e0e0e0; }
.status-snapshot_vorhanden { background: #d6e4ff; }
.status-in_klaerung { background: #ffe0b2; }
.status-bereit_zur_freigabe { background: #fff59d; }
.status-freigegeben { background: #c8e6c9; }
.facts { width: auto; }
.facts th { width: 10rem; }
details { margin: .3rem 0 1rem; }
