/**
 * Tracksies HQ - Utility Classes
 * Status colors, spacing helpers, and other utility classes.
 *
 * @package Tracksies
 * @since 2.0.0
 */

/* ============================================================================
   Status Colors (Customer Statuses)
   ============================================================================ */

.tracksies-status-active { color: var(--tracksies-success); }
.tracksies-status-vip { color: var(--tracksies-secondary); }
.tracksies-status-caution { color: var(--tracksies-warning); }
.tracksies-status-banned { color: var(--tracksies-error); }

/* Customer Status Badges */
.tracksies-customer-status {
	display: inline-block;
	padding: 3px 10px;
	border-radius: var(--tracksies-radius-pill);
	font-size: var(--tracksies-font-size-sm);
	font-weight: 500;
}

.tracksies-customer-status.tracksies-status-active {
	background: #e8f5e9;
	color: #2e7d32;
}

.tracksies-customer-status.tracksies-status-vip {
	background: #e3f2fd;
	color: #1565c0;
}

.tracksies-customer-status.tracksies-status-caution {
	background: #fff8e1;
	color: #f57c00;
}

.tracksies-customer-status.tracksies-status-banned {
	background: #ffebee;
	color: #c62828;
}

/* ============================================================================
   Order Status Badges
   ============================================================================ */

.order-status {
	display: inline-block;
	padding: 3px 8px;
	border-radius: var(--tracksies-radius-sm);
	font-size: var(--tracksies-font-size-xs);
	font-weight: 500;
	text-transform: capitalize;
}

.order-status.status-completed {
	background: #e8f5e9;
	color: #2e7d32;
}

.order-status.status-processing {
	background: #e3f2fd;
	color: #1565c0;
}

.order-status.status-on-hold {
	background: #fff3e0;
	color: #ef6c00;
}

.order-status.status-pending {
	background: #fce4ec;
	color: #c2185b;
}

.order-status.status-refunded,
.order-status.status-cancelled {
	background: #f5f5f5;
	color: #757575;
}

/* ============================================================================
   Lead/Pipeline Status Badges
   ============================================================================ */

.status-badge {
	display: inline-block;
	padding: 3px 8px;
	border-radius: var(--tracksies-radius-sm);
	font-size: var(--tracksies-font-size-xs);
	font-weight: 500;
	text-transform: uppercase;
}

.status-badge.status-new {
	background: #e5f5ff;
	color: #0073aa;
}

.status-badge.status-contacted {
	background: #fff8e5;
	color: #996800;
}

.status-badge.status-quoted {
	background: #f0e6ff;
	color: #6b21a8;
}

.status-badge.status-won {
	background: #d1fae5;
	color: #065f46;
}

.status-badge.status-lost {
	background: #fee2e2;
	color: #991b1b;
}

.status-badge.status-declined {
	background: #f3f4f6;
	color: #4b5563;
}

.status-badge.status-referred {
	background: #e0f2fe;
	color: #0369a1;
}

.status-badge.status-active {
	background: #d1fae5;
	color: #065f46;
}

.status-badge.status-completed {
	background: #e5e7eb;
	color: #374151;
}

.status-badge.status-cancelled {
	background: #fee2e2;
	color: #991b1b;
}

/* ============================================================================
   Score Badges
   ============================================================================ */

.score-badge {
	display: inline-block;
	padding: 3px 8px;
	border-radius: var(--tracksies-radius-sm);
	font-size: var(--tracksies-font-size-sm);
	font-weight: 600;
	color: #fff;
}

.score-badge.score-hot {
	background: #00a32a;
}

.score-badge.score-warm {
	background: #dba617;
}

.score-badge.score-cold {
	background: #72777c;
}

/* ============================================================================
   Interaction Type Badges
   ============================================================================ */

.tracksies-interaction-type-badge {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 4px 10px;
	border-radius: var(--tracksies-radius-pill);
	font-size: var(--tracksies-font-size-sm);
	font-weight: 500;
	background: var(--tracksies-surface);
	color: var(--tracksies-text-light);
}

.tracksies-type-note {
	background: #fff8e1;
	color: #f57c00;
}

.tracksies-type-call {
	background: #e3f2fd;
	color: #1565c0;
}

.tracksies-type-email {
	background: #e8eaf6;
	color: #3949ab;
}

.tracksies-type-complaint {
	background: #ffebee;
	color: #c62828;
}

.tracksies-type-compliment {
	background: #fce4ec;
	color: #c2185b;
}

.tracksies-type-refund {
	background: #fff3e0;
	color: #e65100;
}

.tracksies-type-return {
	background: #efebe9;
	color: #5d4037;
}

.tracksies-type-preference {
	background: #e0f2f1;
	color: #00796b;
}

.tracksies-type-other {
	background: #eceff1;
	color: #546e7a;
}

/* ============================================================================
   Role Badges
   ============================================================================ */

.tracksies-role-badge {
	display: inline-block;
	padding: 3px 10px;
	border-radius: var(--tracksies-radius-pill);
	font-size: var(--tracksies-font-size-sm);
	font-weight: 500;
	background: var(--tracksies-surface);
	color: var(--tracksies-text-light);
}

.tracksies-role-packer {
	background: #e3f2fd;
	color: #1565c0;
}

.tracksies-role-shipper {
	background: #fff8e1;
	color: #f57c00;
}

.tracksies-role-manager {
	background: #e8f5e9;
	color: #2e7d32;
}

.tracksies-role-administrator {
	background: #fce4ec;
	color: #c62828;
}

/* ============================================================================
   Recommendation Badges (Lead Sources)
   ============================================================================ */

.recommendation {
	display: inline-block;
	padding: 3px 8px;
	border-radius: var(--tracksies-radius-sm);
	font-size: var(--tracksies-font-size-xs);
	font-weight: 500;
}

.recommendation-keep {
	background: #d1fae5;
	color: #065f46;
}

.recommendation-avoid {
	background: #fee2e2;
	color: #991b1b;
}

.recommendation-neutral {
	background: #f3f4f6;
	color: #6b7280;
}

/* ============================================================================
   Value Modifiers
   ============================================================================ */

.modifier-value,
.points-value {
	font-weight: 600;
}

.modifier-value.positive,
.points-value.positive {
	color: #00a32a;
}

.modifier-value.negative,
.points-value.negative {
	color: #d63638;
}

/* ============================================================================
   Spacing Utilities
   ============================================================================ */

.tracksies-mt-0 { margin-top: 0 !important; }
.tracksies-mt-1 { margin-top: var(--tracksies-space-sm) !important; }
.tracksies-mt-2 { margin-top: var(--tracksies-space) !important; }
.tracksies-mt-3 { margin-top: var(--tracksies-space-lg) !important; }
.tracksies-mt-4 { margin-top: var(--tracksies-space-xl) !important; }

.tracksies-mb-0 { margin-bottom: 0 !important; }
.tracksies-mb-1 { margin-bottom: var(--tracksies-space-sm) !important; }
.tracksies-mb-2 { margin-bottom: var(--tracksies-space) !important; }
.tracksies-mb-3 { margin-bottom: var(--tracksies-space-lg) !important; }
.tracksies-mb-4 { margin-bottom: var(--tracksies-space-xl) !important; }

.tracksies-pt-0 { padding-top: 0 !important; }
.tracksies-pt-1 { padding-top: var(--tracksies-space-sm) !important; }
.tracksies-pt-2 { padding-top: var(--tracksies-space) !important; }
.tracksies-pt-3 { padding-top: var(--tracksies-space-lg) !important; }

.tracksies-pb-0 { padding-bottom: 0 !important; }
.tracksies-pb-1 { padding-bottom: var(--tracksies-space-sm) !important; }
.tracksies-pb-2 { padding-bottom: var(--tracksies-space) !important; }
.tracksies-pb-3 { padding-bottom: var(--tracksies-space-lg) !important; }

/* ============================================================================
   Text Utilities
   ============================================================================ */

.tracksies-text-muted {
	color: var(--tracksies-text-light) !important;
}

.tracksies-text-success {
	color: var(--tracksies-success) !important;
}

.tracksies-text-warning {
	color: var(--tracksies-warning) !important;
}

.tracksies-text-error {
	color: var(--tracksies-error) !important;
}

.tracksies-text-info {
	color: var(--tracksies-info) !important;
}

.tracksies-text-center {
	text-align: center !important;
}

.tracksies-text-right {
	text-align: right !important;
}

.tracksies-text-mono {
	font-family: var(--tracksies-font-mono) !important;
}

.tracksies-text-uppercase {
	text-transform: uppercase !important;
}

/* ============================================================================
   Display Utilities
   ============================================================================ */

.tracksies-d-none { display: none !important; }
.tracksies-d-block { display: block !important; }
.tracksies-d-flex { display: flex !important; }
.tracksies-d-inline-flex { display: inline-flex !important; }
.tracksies-d-grid { display: grid !important; }

/* Flex utilities */
.tracksies-flex-column { flex-direction: column !important; }
.tracksies-flex-wrap { flex-wrap: wrap !important; }
.tracksies-align-center { align-items: center !important; }
.tracksies-align-start { align-items: flex-start !important; }
.tracksies-justify-between { justify-content: space-between !important; }
.tracksies-justify-center { justify-content: center !important; }
.tracksies-gap-1 { gap: var(--tracksies-space-sm) !important; }
.tracksies-gap-2 { gap: var(--tracksies-space) !important; }
.tracksies-gap-3 { gap: var(--tracksies-space-lg) !important; }

/* ============================================================================
   No Badges Placeholder
   ============================================================================ */

.tracksies-no-badges {
	color: var(--tracksies-text-light);
	font-style: italic;
}

/* ============================================================================
   Active/Inactive Labels
   ============================================================================ */

.active-label {
	color: #00a32a;
	font-size: var(--tracksies-font-size-sm);
}

.inactive-label {
	color: #a7aaad;
	font-size: var(--tracksies-font-size-sm);
}

tr.inactive {
	opacity: 0.6;
}
