.lmrp {
	--lmrp-accent: #ff5a4f;
	box-sizing: border-box;
	margin: 12px 0 16px;
	padding: 16px 18px;
	border: 1px solid rgba(31, 36, 48, .08);
	border-radius: 14px;
	background: #fff;
	box-shadow: 0 8px 24px rgba(31, 36, 48, .06);
	color: #333;
}

.lmrp *, .lmrp-bulk *, .lmrp-case-filters * { box-sizing: border-box; }

.lmrp__steps {
	display: flex;
	gap: 0;
	margin: 0;
	padding: 0;
	list-style: none;
	overflow-x: auto;
}

.lmrp__step {
	position: relative;
	display: flex;
	flex: 1 0 92px;
	min-width: 0;
	align-items: center;
	flex-direction: column;
	gap: 7px;
	color: #a6a6b0;
	text-align: center;
	font-size: 12px;
}

.lmrp__step i {
	position: relative;
	z-index: 1;
	display: grid;
	width: 28px;
	height: 28px;
	place-items: center;
	border-radius: 50%;
	background: #eeeef3;
	color: #a6a6b0;
	font-style: normal;
	font-weight: 700;
}

.lmrp__step.is-done, .lmrp__step.is-current { color: #333; }
.lmrp__step.is-done i, .lmrp__step.is-current i { background: var(--lmrp-accent); color: #fff; }
.lmrp__step--declined.is-done i, .lmrp__step--declined.is-current i { background: #777; }
.lmrp--compact { padding: 12px; }
.lmrp--compact .lmrp__step span { display: none; }
.lmrp--compact .lmrp__step { flex-basis: 42px; }
.lmrp--minimal .lmrp__step { display: none; }
.lmrp--minimal .lmrp__step.is-current { display: flex; flex-direction: row; justify-content: flex-start; text-align: left; }

/* LM Repair Style 0.7.5 compatibility. */
.lm-case-filters:not(.lmrp-case-filters) { display: none !important; }
.lm-progress[data-lm-case-progress] { display: none !important; }

.lmrp-case-filters {
	display: flex;
	gap: 6px;
	margin: 8px 0 20px;
	border-bottom: 1px solid #e7e4ec;
	overflow-x: auto;
}

.lmrp-case-filters .lmrp-filter {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	padding: 11px 14px;
	border-bottom: 3px solid transparent;
	color: #716d7e;
	font-weight: 800;
	text-decoration: none;
	white-space: nowrap;
}

.lmrp-case-filters .lmrp-filter:hover,
.lmrp-case-filters .lmrp-filter:focus,
.lmrp-case-filters .lmrp-filter.active {
	border-color: #ff5a4f;
	color: #ff5a4f;
}

.lmrp-case-filters b {
	min-width: 22px;
	padding: 2px 7px;
	border-radius: 999px;
	background: #f1eff4;
	color: #696575;
	font-size: 11px;
	line-height: 18px;
	text-align: center;
}

.lmrp-filter.active b { background: #ffe9e5; color: #d94337; }
.lmrp-filter--audit b { background: #fff3cf; color: #805f00; }
.lmrp-filter--legacy b { background: #eceff2; color: #555e68; }

.lmrp-notice {
	margin: 10px 0;
	padding: 11px 14px;
	border: 1px solid;
	border-radius: 10px;
	font-weight: 700;
}

.lmrp-notice--warning { border-color: #ead190; background: #fff8df; color: #684f08; }
.lmrp-notice--success { border-color: #a9d7bd; background: #edf9f1; color: #245c3b; }

.lmrp-legacy-note {
	margin: 12px 0 16px;
	padding: 11px 14px;
	border: 1px solid #d9dde2;
	border-radius: 10px;
	background: #f3f5f7;
	color: #555e68;
	font-weight: 700;
}

.lmrp-bulk {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	margin: 12px 0 18px;
	padding: 14px 16px;
	border: 1px solid #e6e3eb;
	border-radius: 14px;
	background: #fff;
	box-shadow: 0 5px 18px rgba(35, 29, 48, .05);
}

.lmrp-bulk__heading strong, .lmrp-bulk__heading small { display: block; }
.lmrp-bulk__heading strong { margin-bottom: 4px; color: #2b2737; font-size: 14px; }
.lmrp-bulk__heading small { max-width: 540px; color: #777280; font-size: 11px; }
.lmrp-bulk__controls { display: flex; align-items: center; gap: 8px; }
.lmrp-bulk__all { color: #55515e; font-weight: 700; white-space: nowrap; }
.lmrp-bulk select { min-width: 190px; padding: 7px 9px; border: 1px solid #d9d5df; border-radius: 8px; background: #fff; }
.lmrp-bulk button[disabled] { cursor: not-allowed; opacity: .5; }

.lmrp-row-select {
	position: relative;
	z-index: 3;
	display: inline-flex;
	align-items: center;
	margin: 0 7px 2px 0;
	vertical-align: middle;
}

.lmrp-row-select input[type="checkbox"] { width: 17px; height: 17px; margin: 0; accent-color: #ff5a4f; }
.lmrp-row-select input[type="hidden"] { display: none; }

.lmrp-case-state {
	display: inline-flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 6px;
	margin: 5px 0 2px;
}

.lmrp-badge, .lmrp-audit {
	display: inline-flex;
	align-items: center;
	min-height: 24px;
	padding: 3px 9px;
	border-radius: 999px;
	font-size: 11px;
	font-weight: 800;
	line-height: 1.35;
}

.lmrp-badge--waiting { background: #f1eff4; color: #5e5969; }
.lmrp-badge--inspection { background: #eaf1ff; color: #345b9b; }
.lmrp-badge--repair { background: #fff0eb; color: #c84637; }
.lmrp-badge--complete { background: #e8f7ee; color: #237447; }
.lmrp-badge--legacy { background: #eceff2; color: #555e68; }
.lmrp-audit { background: #fff4cf; color: #7d5c00; cursor: help; }

@media (max-width: 700px) {
	.lmrp { padding: 13px 10px; }
	.lmrp__steps { padding-bottom: 4px; }
	.lmrp__step { flex-basis: 76px; font-size: 11px; }
	.lmrp-case-filters .lmrp-filter { padding: 10px 11px; }
	.lmrp-bulk { align-items: stretch; flex-direction: column; }
	.lmrp-bulk__controls { align-items: stretch; flex-wrap: wrap; }
	.lmrp-bulk__all { width: 100%; }
	.lmrp-bulk select { flex: 1 1 180px; min-width: 0; }
}
