/*
 * Fixture Configurator Styles (Phase 4)
 * Scoped under .ill-configurator.ill-configurator-fixture
 */

/* Configurator Progress Bar */
.ill-configurator-fixture .configurator-progress {
	display: flex;
	justify-content: space-between;
	padding: 1rem 0;
	margin-bottom: 1.5rem;
	border-bottom: 1px solid #dee2e6;
	overflow-x: auto;
}
.ill-configurator-fixture .progress-step {
	display: flex;
	flex-direction: column;
	align-items: center;
	min-width: 80px;
	padding: 0 0.5rem;
}
.ill-configurator-fixture .progress-step .step-number {
	width: 28px;
	height: 28px;
	border-radius: 50%;
	background: #e9ecef;
	color: #6c757d;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 0.75rem;
	font-weight: 600;
	margin-bottom: 0.25rem;
}
.ill-configurator-fixture .progress-step.active .step-number {
	background: #0d6efd;
	color: white;
}
.ill-configurator-fixture .progress-step.completed .step-number {
	background: #198754;
	color: white;
}
.ill-configurator-fixture .progress-step .step-label {
	font-size: 0.7rem;
	color: #6c757d;
	text-align: center;
}
.ill-configurator-fixture .progress-step.active .step-label {
	color: #0d6efd;
	font-weight: 500;
}

/* Part Number Preview */
.ill-configurator-fixture .part-number-preview {
	font-family: 'Courier New', monospace;
	font-size: 1.25rem;
	background: #f8f9fa;
	padding: 1rem;
	border-radius: 0.5rem;
	border: 2px solid #dee2e6;
	margin-bottom: 1rem;
	text-align: center;
}
.ill-configurator-fixture .part-number-preview .segment {
	display: inline;
}
.ill-configurator-fixture .part-number-preview .segment.unselected {
	color: #adb5bd;
}
.ill-configurator-fixture .part-number-preview .segment.selected {
	color: #212529;
	font-weight: 600;
}
.ill-configurator-fixture .part-number-preview .segment.locked {
	color: #0d6efd;
}

/* Config Section */
.ill-configurator-fixture .config-section {
	margin-bottom: 1.5rem;
	padding-bottom: 1rem;
	border-bottom: 1px solid #f0f0f0;
}
.ill-configurator-fixture .config-section h4 {
	font-size: 1rem;
	font-weight: 600;
	margin-bottom: 0.75rem;
	color: #333;
}
.ill-configurator-fixture .config-section.locked h4 {
	color: #6c757d;
}
.ill-configurator-fixture .config-section .series-display {
	background: #e7f1ff;
	border: 1px solid #b6d4fe;
	padding: 0.75rem 1rem;
	border-radius: 0.5rem;
}
.ill-configurator-fixture .config-section .series-display .series-name {
	font-weight: 600;
	color: #0d6efd;
}

/* Feed Configuration */
.ill-configurator-fixture .feed-config {
	display: flex;
	gap: 1rem;
	flex-wrap: wrap;
}
.ill-configurator-fixture .feed-config .feed-direction,
.ill-configurator-fixture .feed-config .feed-length {
	flex: 1;
	min-width: 150px;
}
.ill-configurator-fixture .feed-config label {
	font-size: 0.875rem;
	font-weight: 500;
	margin-bottom: 0.5rem;
	display: block;
}

/* Length Input Styles */
.ill-configurator-fixture .length-input-group {
	display: flex;
	gap: 0.5rem;
}
.ill-configurator-fixture .length-input-group input {
	flex: 2;
}
.ill-configurator-fixture .length-input-group select {
	flex: 1;
}

/* Complex Fixture Banner */
.ill-configurator-fixture .complex-fixture-banner {
	background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
	color: white;
	padding: 1rem;
	border-radius: 0.5rem;
	margin-top: 1.5rem;
}
.ill-configurator-fixture .complex-fixture-banner a {
	color: white;
	text-decoration: underline;
}

/* Output section hidden until lens selected */
.ill-configurator-fixture .output-section.awaiting-lens,
.ill-configurator-fixture #outputSection.awaiting-lens {
	display: none !important;
}
