/* Finite operator/dealer UI states. Dynamic values never become CSS text. */
.payment-badge{display:inline-block;padding:2px 8px;border-radius:4px;font-size:11px;font-weight:600;color:#fff}
.payment-badge-paid{background:#16a34a}
.payment-badge-invoiced{background:#f97316}
.payment-badge-unpaid{background:#6b7280}
.agreement-status-signed{color:#4ade80}
.agreement-status-pending{color:#f59e0b}
.agreement-status-other{color:var(--muted)}
.source-check-pass{color:#86efac}
.source-check-fail{color:#fca5a5}
.source-profit{font-size:11px;margin-top:2px}
.supplier-image-choice{position:relative;display:block;cursor:pointer;border-radius:6px;overflow:hidden;border:2px solid var(--border);background:#050505}
.supplier-image-choice.is-selected{border-color:var(--accent)}
.blog-status-badge{display:inline-block;padding:2px 8px;border-radius:4px;font-size:11px;font-weight:700}
.blog-status-draft{background:#f59e0b22;color:#f59e0b}
.blog-status-published{background:#22c55e22;color:#22c55e}
.blog-status-archived{background:#6b728022;color:#6b7280}
.payment-countdown{font-size:10px;font-weight:600;margin-left:2px}
.payment-countdown-upcoming{color:#16a34a}
.payment-countdown-due{color:#f97316}
.payment-countdown-overdue{color:#ef4444}
.dealer-agreement-status{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em}
.dealer-agreement-signed{color:#22c55e}
.dealer-agreement-pending{color:#ff9900}
.dealer-agreement-expired,.dealer-agreement-other{color:#888}
.dealer-portal-load-error{background:rgba(127,29,29,.6);border:1px solid rgba(239,68,68,.4);border-radius:12px;padding:16px 20px;margin:16px 0;display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:14px;color:#fef2f2}
.dealer-pdf-mobile{display:flex;align-items:center;justify-content:center;min-height:280px;flex-direction:column}
