.dn-form { margin-bottom: 18px; }
.dn-form .form-group { margin-bottom: 12px; }
.dn-form label { display: block; font-size: 13px; font-weight: bold; margin-bottom: 4px; color: #2c3e50; }
.dn-form input.form-control { max-width: 520px; }
.dn-status { margin-left: 10px; font-size: 13px; color: #777; }

.dn-error { padding: 10px 12px; margin-bottom: 14px; border: 1px solid #ebccd1; background: #f2dede; color: #a94442; font-size: 13px; border-radius: 3px; }
.dn-summary { padding: 10px 12px; margin-bottom: 14px; border: 1px solid #ddd; background: #f5f5f5; font-size: 14px; font-weight: bold; border-radius: 3px; }
.dn-summary.dn-s-valid { background: #dff0d8; border-color: #d6e9c6; color: #3c763d; }
.dn-summary.dn-s-unsigned { background: #d9edf7; border-color: #bce8f1; color: #31708f; }
.dn-summary.dn-s-incomplete { background: #fcf8e3; border-color: #faebcc; color: #8a6d3b; }
.dn-summary.dn-s-broken { background: #f2dede; border-color: #ebccd1; color: #a94442; }
.dn-summary.dn-s-unknown { background: #eee; border-color: #ddd; color: #555; }

.dn-item { border: 1px solid #ddd; border-radius: 3px; margin-bottom: 10px; font-size: 13px; }
.dn-item-head { display: flex; flex-wrap: wrap; align-items: baseline; gap: 8px; padding: 8px 10px; background: #fafafa; }
.dn-badge { display: inline-block; min-width: 56px; text-align: center; padding: 1px 8px; border-radius: 3px; font-size: 12px; font-weight: bold; }
.dn-badge.dn-l-ok { background: #dff0d8; color: #3c763d; }
.dn-badge.dn-l-warn { background: #fcf8e3; color: #8a6d3b; }
.dn-badge.dn-l-bad { background: #f2dede; color: #a94442; }
.dn-badge.dn-l-info { background: #d9edf7; color: #31708f; }
.dn-badge.dn-l-skip { background: #eee; color: #777; }
.dn-item-name { font-weight: bold; color: #2c3e50; }
.dn-item-body { padding: 8px 10px; }
.dn-msg { margin-bottom: 4px; }
.dn-issues { padding-left: 18px; margin: 6px 0 0; }
.dn-issues li { margin-bottom: 3px; }
.dn-table { width: 100%; border-collapse: collapse; margin-top: 6px; }
.dn-table td, .dn-table th { padding: 5px 8px; border: 1px solid #e3e3e3; font-size: 12px; text-align: left; word-break: break-all; }
.dn-table th { background: #fafafa; }

@media (max-width: 600px) {
	.dn-form input.form-control { max-width: 100%; }
}
