/* Generic cards and panels. */
.sarus-card, .sarus-panel { border: 1px solid var(--sarus-border); background: var(--sarus-panel); box-shadow: var(--sarus-shadow); }
/* Alerts, error messages, success messages, and their close action. */
.sarus-alert { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; border: 1px solid var(--sarus-border); padding: 9px 12px; background: var(--sarus-surface); color: var(--sarus-muted); }
.sarus-alert.is-error { border-color: #8f333b; background: #481d22; color: #ffb4b4; }
.sarus-alert.is-success { border-color: #2fb344; background: #173d24; color: #8ce99a; }
.sarus-alert-close { flex: 0 0 auto; border: 0; padding: 0 2px; background: transparent; color: currentColor; cursor: pointer; font-size: 20px; line-height: 1; }
/* Status badges. */
.sarus-badge { display: inline-flex; min-height: 24px; align-items: center; border: 1px solid var(--sarus-border); padding: 3px 7px; color: var(--sarus-muted); font-size: 12px; white-space: nowrap; }
.sarus-badge-success { border-color: #2fb344; color: #187d2c; }
.sarus-badge-warning { border-color: #f59f00; color: #9a6700; }
.sarus-badge-danger { border-color: #d63939; color: #b42318; }
/* Compact text status used by audit and operational result columns. */
.sarus-status { font-weight: 650; white-space: nowrap; }
.sarus-status-success { color: var(--sarus-success); }
.sarus-status-fail { color: var(--sarus-danger); }
.sarus-status-other { color: var(--sarus-warning); }
body[data-theme="dark"] .sarus-status-success { color: #69db7c; }
body[data-theme="dark"] .sarus-status-fail { color: #ff8787; }
body[data-theme="dark"] .sarus-status-other { color: #ffb86b; }
/* Avatars and empty/loading states. */
.sarus-avatar { width: 28px; height: 28px; border-radius: 50%; object-fit: cover; background: var(--sarus-control-bg); }
.sarus-empty { padding: 28px 14px; color: var(--sarus-muted); text-align: center; }
.sarus-loading { color: var(--sarus-muted); cursor: progress; }
.sarus-visually-hidden { position: absolute !important; width: 1px !important; height: 1px !important; margin: -1px !important; padding: 0 !important; overflow: hidden !important; clip: rect(0 0 0 0) !important; white-space: nowrap !important; border: 0 !important; }
