#ca-cs-wizard-root { max-width: 900px; }

.ca-cs-stepper {
	display: flex;
	gap: 8px;
	margin-bottom: 20px;
	flex-wrap: wrap;
}
.ca-cs-step {
	padding: 6px 14px;
	border-radius: 20px;
	background: #f0f0f1;
	color: #646970;
	font-size: 13px;
	font-weight: 600;
}
.ca-cs-step.active { background: #2271b1; color: #fff; }
.ca-cs-step.done { background: #d7f5dc; color: #1a7f37; }

.ca-cs-panel {
	background: #fff;
	border: 1px solid #dcdcde;
	border-radius: 6px;
	padding: 24px;
}

.ca-cs-error {
	background: #fcf0f1;
	border-left: 4px solid #d63638;
	padding: 10px 14px;
	margin-bottom: 16px;
	color: #7a1f22;
}

.ca-cs-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
	gap: 14px;
	margin-bottom: 16px;
}
.ca-cs-field { display: flex; flex-direction: column; }

.ca-cs-label { font-weight: 600; margin: 10px 0 4px; display: block; }
.ca-cs-input, .ca-cs-select, .ca-cs-textarea {
	padding: 8px 10px;
	border: 1px solid #8c8f94;
	border-radius: 4px;
	font-size: 14px;
	width: 100%;
	box-sizing: border-box;
}
.ca-cs-textarea { resize: vertical; }

.ca-cs-radio-group { display: flex; gap: 20px; margin: 8px 0 16px; }
.ca-cs-radio-group label { display: flex; align-items: center; gap: 6px; font-weight: 500; }

.ca-cs-actions {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-top: 24px;
}

.ca-cs-photo-thumb {
	max-width: 320px;
	border: 1px solid #dcdcde;
	border-radius: 4px;
	margin-top: 14px;
	display: block;
}
.ca-cs-loading { font-style: italic; color: #646970; margin-top: 8px; }

.ca-cs-hint { color: #646970; margin-bottom: 16px; }

.ca-cs-consent {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	background: #f6f7f7;
	border: 1px solid #dcdcde;
	border-radius: 4px;
	padding: 14px;
	margin-bottom: 20px;
	line-height: 1.5;
}
.ca-cs-consent input { margin-top: 3px; flex-shrink: 0; width: 18px; height: 18px; }

.ca-cs-signature-wrap {
	border: 2px dashed #8c8f94;
	border-radius: 6px;
	background: #fff;
	margin-bottom: 10px;
}
.ca-cs-signature-canvas {
	width: 100%;
	height: 45vh;
	min-height: 280px;
	display: block;
	touch-action: none;
	cursor: crosshair;
}

.ca-cs-success { text-align: center; padding: 60px 24px; }
.ca-cs-success h2 { color: #1a7f37; font-size: 28px; }

@media (max-width: 600px) {
	.ca-cs-actions { flex-direction: column-reverse; gap: 10px; }
	.ca-cs-actions .button { width: 100%; text-align: center; }
}

.ca-cs-property-search-wrap {
	position: relative;
	margin-bottom: 20px;
}
.ca-cs-property-results {
	display: none;
	position: absolute;
	top: 100%;
	left: 0;
	right: 0;
	background: #fff;
	border: 1px solid #8c8f94;
	border-top: none;
	border-radius: 0 0 4px 4px;
	max-height: 220px;
	overflow-y: auto;
	z-index: 10;
	box-shadow: 0 4px 10px rgba(0,0,0,0.08);
}
.ca-cs-property-option {
	padding: 10px 12px;
	cursor: pointer;
	border-bottom: 1px solid #f0f0f1;
}
.ca-cs-property-option:last-child { border-bottom: none; }
.ca-cs-property-option:hover { background: #f0f6fc; }
.ca-cs-property-empty {
	padding: 10px 12px;
	color: #646970;
	font-style: italic;
}
