:root { color-scheme: light dark; }
body { font-family: system-ui, sans-serif; margin: 0; padding: 1.5rem; max-width: 960px; margin-inline: auto; }
h1 { margin-top: 0; }
nav { margin-bottom: 1rem; }
nav.breadcrumb { font-size: 0.9rem; margin: 1rem 0; }
.centered { display: flex; justify-content: center; align-items: center; min-height: 80vh; }
.card { border: 1px solid #8888; border-radius: 8px; padding: 1rem 1.25rem; margin-bottom: 1rem; }
.card.highlight { border-color: #e0a800; background: #e0a80022; }
label { display: block; margin-bottom: 0.75rem; }
input, textarea { display: block; width: 100%; box-sizing: border-box; padding: 0.4rem; margin-top: 0.25rem; }
button { padding: 0.4rem 0.9rem; cursor: pointer; }
button.linklike { background: none; border: none; color: #3366cc; padding: 0; cursor: pointer; text-decoration: underline; font-size: 0.85em; }
table { width: 100%; border-collapse: collapse; margin-top: 0.5rem; }
th, td { text-align: left; padding: 0.4rem 0.5rem; border-bottom: 1px solid #8884; }
.status.ok { color: #2a7f2a; }
.status.warn { color: #b34700; }
.error { color: #c0392b; }
.hint { font-size: 0.85em; opacity: 0.75; }
.toolbar { display: flex; gap: 0.5rem; margin: 1rem 0; }
.checkbox-row { display: flex; align-items: center; gap: 0.4rem; margin-bottom: 0.3rem; }
.checkbox-row input { width: auto; display: inline; }
dialog { border-radius: 8px; border: 1px solid #8888; min-width: 320px; max-width: 90vw; }
dialog menu { display: flex; justify-content: flex-end; gap: 0.5rem; }
.inline-form { display: flex; gap: 0.5rem; align-items: center; flex-wrap: wrap; }
.inline-form input { width: auto; }
