
	.question-header.svelte-rkh5pb {
		display: flex;
		align-items: center;
		gap: 0.75rem;
		margin-bottom: 1rem;
		flex-wrap: wrap;
	}

	.category-badge.svelte-rkh5pb {
		display: inline-flex;
		align-items: center;
		padding: 0.375rem 0.75rem;
		border: 1px solid;
		border-radius: var(--radius-full);
		font-size: 0.75rem;
		font-weight: 600;
		text-transform: uppercase;
		letter-spacing: 0.05em;
	}

	.question-number.svelte-rkh5pb {
		font-size: 0.875rem;
		color: var(--color-text-tertiary);
		font-weight: 500;
	}

	.question-text.svelte-rkh5pb {
		font-family: var(--font-body);
		font-size: 1.25rem;
		font-weight: 700;
		color: var(--color-text-primary);
		line-height: 1.5;
		margin: 0 0 1.5rem 0;
	}

	@media (min-width: 768px) {
		.question-text.svelte-rkh5pb {
			font-size: 1.5rem;
		}
	}

	.required-indicator.svelte-rkh5pb {
		color: var(--color-status-error);
		margin-left: 0.25rem;
	}

	@media (max-width: 640px) {
		.question-text.svelte-rkh5pb {
			font-size: 1.125rem;
		}
	}

	.option-button.svelte-8f29z3 {
		display: flex;
		flex-direction: column;
		gap: 0.5rem;
		padding: 1.25rem;
		border-radius: var(--radius-lg);
		border: 2px solid var(--color-border);
		background: var(--color-void-pure);
		color: var(--color-text-primary);
		text-align: left;
		cursor: pointer;
		transition: var(--transition-normal);
		position: relative;
		overflow: hidden;
	}

	.option-button.svelte-8f29z3:hover:not(:disabled):not(.selected) {
		border-color: var(--color-border-light);
		background: rgba(255, 255, 255, 0.02);
	}

	.option-button.svelte-8f29z3:disabled {
		opacity: 0.5;
		cursor: not-allowed;
	}

	.option-button.svelte-8f29z3::before {
		content: '';
		position: absolute;
		top: 0;
		left: 0;
		width: 4px;
		height: 100%;
		background: transparent;
		transition: var(--transition-normal);
	}

	.option-button.svelte-8f29z3:hover:not(:disabled)::before {
		background: var(--theme-color);
		opacity: 0.5;
	}

	.option-button.selected.svelte-8f29z3 {
		border-color: var(--theme-color);
		background: var(--theme-bg);
	}

	.option-button.selected.svelte-8f29z3::before {
		background: var(--theme-color);
	}

	.option-content.svelte-8f29z3 {
		display: flex;
		align-items: flex-start;
		gap: 1rem;
	}

	.option-indicator.svelte-8f29z3 {
		flex-shrink: 0;
		width: 1.5rem;
		height: 1.5rem;
		border-radius: 50%;
		border: 2px solid var(--color-border);
		display: flex;
		align-items: center;
		justify-content: center;
		transition: var(--transition-normal);
		margin-top: 0.125rem;
	}

	.option-indicator.multi.svelte-8f29z3 {
		border-radius: var(--radius-sm);
	}

	.option-button.selected.svelte-8f29z3 .option-indicator:where(.svelte-8f29z3) {
		border-color: var(--theme-color);
		background: var(--theme-color);
	}

	.check-icon-wrapper.svelte-8f29z3 {
		color: white;
		display: flex;
		align-items: center;
		justify-content: center;
	}

	.option-text-wrapper.svelte-8f29z3 {
		flex: 1;
		display: flex;
		flex-direction: column;
		gap: 0.25rem;
	}

	.option-text.svelte-8f29z3 {
		font-size: 1rem;
		line-height: 1.5;
		color: var(--color-text-primary);
	}

	.option-description.svelte-8f29z3 {
		font-size: 0.875rem;
		color: var(--color-text-tertiary);
		line-height: 1.5;
	}

	@media (prefers-reduced-motion: reduce) {
		.option-button.svelte-8f29z3 {
			transition: none;
		}
	}

	@media (max-width: 640px) {
		.option-button.svelte-8f29z3 {
			padding: 1rem;
			min-height: 44px;
		}

		.option-text.svelte-8f29z3 {
			font-size: 1rem;
		}

		.option-content.svelte-8f29z3 {
			gap: 0.75rem;
		}

		.option-indicator.svelte-8f29z3 {
			width: 1.75rem;
			height: 1.75rem;
		}

		.option-description.svelte-8f29z3 {
			font-size: 0.875rem;
		}
	}

	.rating-container.svelte-114cbix {
		display: flex;
		justify-content: center;
		gap: 0.75rem;
		flex-wrap: wrap;
	}

	.rating-button.svelte-114cbix {
		display: flex;
		flex-direction: column;
		align-items: center;
		gap: 0.375rem;
		padding: 0.875rem;
		border-radius: var(--radius-lg);
		border: 2px solid var(--color-border);
		background: var(--color-void-pure);
		cursor: pointer;
		transition: color 0.3s ease, background-color 0.3s ease, border-color 0.3s ease, transform 0.3s ease;
		min-width: 3.5rem;
		min-height: 44px;
	}

	.rating-button.svelte-114cbix:hover:not(:disabled) {
		border-color: var(--theme-color);
		background: rgba(255, 255, 255, 0.02);
	}

	.rating-button.selected.svelte-114cbix {
		border-color: var(--theme-color);
		background: var(--theme-bg);
	}

	.star-icon-wrapper.svelte-114cbix {
		color: var(--color-text-tertiary);
		transition: color 0.3s ease, background-color 0.3s ease, border-color 0.3s ease, transform 0.3s ease;
		display: flex;
		align-items: center;
		justify-content: center;
	}

	.rating-button.selected.svelte-114cbix .star-icon-wrapper:where(.svelte-114cbix) {
		color: var(--theme-color);
	}

	.rating-button.selected.svelte-114cbix .star-icon-wrapper.filled:where(.svelte-114cbix) svg {
		fill: var(--theme-color);
	}

	.rating-number.svelte-114cbix {
		font-size: 0.75rem;
		font-weight: 600;
		color: var(--color-text-secondary);
	}

	.rating-label.svelte-114cbix {
		max-width: 6rem;
		font-size: 0.75rem;
		line-height: 1.3;
		text-align: center;
		color: var(--color-text-tertiary);
	}

	.text-input-container.svelte-1cp042v {
		width: 100%;
	}

	.text-input.svelte-1cp042v {
		width: 100%;
		min-height: 8rem;
		padding: 1rem;
		border-radius: var(--radius-lg);
		border: 2px solid var(--color-border);
		background: var(--color-void-pure);
		color: var(--color-text-primary);
		font-family: var(--font-body);
		font-size: 1rem;
		line-height: 1.6;
		resize: vertical;
		transition: color 0.3s ease, background-color 0.3s ease, border-color 0.3s ease, transform 0.3s ease;
	}

	.text-input.svelte-1cp042v:focus {
		border-color: var(--color-gold);
		outline: none;
		box-shadow: 0 0 0 2px rgba(212, 175, 55, 0.2);
	}

	.text-input.svelte-1cp042v::-moz-placeholder {
		color: var(--color-text-tertiary);
	}

	.text-input.svelte-1cp042v::placeholder {
		color: var(--color-text-tertiary);
	}

	.options-list.svelte-hoshc4 {
		display: flex;
		flex-direction: column;
		gap: 0.75rem;
	}

	.question-card.svelte-75eo3a {
		background: var(--color-void-surface);
		border: 1px solid var(--color-border);
		border-radius: var(--radius-xl);
		padding: 1rem;
		transition: var(--transition-normal);
	}

	@media (min-width: 640px) {
		.question-card.svelte-75eo3a {
			padding: 1.5rem;
		}
	}

	@media (min-width: 768px) {
		.question-card.svelte-75eo3a {
			padding: 2rem;
		}
	}

	.assessment-progress.svelte-1vyxkhf {
		margin-bottom: 1.5rem;
	}

	.assessment-progress.position-bottom.svelte-1vyxkhf {
		margin-bottom: 0;
		margin-top: 1.5rem;
	}

	.progress-info.svelte-1vyxkhf {
		display: flex;
		justify-content: space-between;
		align-items: center;
		margin-bottom: 0.75rem;
	}

	.position-bottom.svelte-1vyxkhf .progress-info:where(.svelte-1vyxkhf) {
		margin-bottom: 0;
		margin-top: 0.75rem;
	}

	.progress-text.svelte-1vyxkhf {
		font-size: 0.875rem;
		color: var(--color-text-secondary);
		font-weight: 500;
	}

	.progress-percentage.svelte-1vyxkhf {
		font-size: 0.875rem;
		font-weight: 600;
	}

	.progress-bar-container.svelte-1vyxkhf {
		height: 0.375rem;
		background: var(--color-void);
		border-radius: var(--radius-full);
		overflow: hidden;
	}

	.progress-bar.svelte-1vyxkhf {
		height: 100%;
		border-radius: var(--radius-full);
		transition: width 0.4s ease;
	}

	.step-indicators.svelte-1vyxkhf {
		display: flex;
		justify-content: center;
		gap: 0.5rem;
		margin-top: 1rem;
		flex-wrap: wrap;
	}

	.step-dot.svelte-1vyxkhf {
		min-width: 2.75rem;
		height: 2.75rem;
		border-radius: 50%;
		border: 2px solid var(--color-border);
		background: var(--color-void-surface);
		color: var(--color-text-tertiary);
		font-size: 0.8125rem;
		font-weight: 600;
		display: flex;
		align-items: center;
		justify-content: center;
		cursor: default;
		transition: var(--transition-normal);
		padding: 0 0.25rem;
	}

	.step-dot.active.svelte-1vyxkhf {
		border-color: var(--color-gold);
		background: rgba(212, 175, 55, 0.1);
		color: var(--color-gold);
		transform: scale(1.1);
	}

	.step-dot.answered.svelte-1vyxkhf {
		border-color: var(--color-border-light);
		color: var(--color-text-primary);
	}

	.step-dot.clickable.svelte-1vyxkhf {
		cursor: pointer;
	}

	.step-dot.clickable.svelte-1vyxkhf:hover {
		transform: scale(1.1);
		border-color: var(--color-gold);
	}

	@media (prefers-reduced-motion: reduce) {
		.step-dot.svelte-1vyxkhf {
			transition: none;
		}
	}

	@media (max-width: 640px) {
		.step-dot.svelte-1vyxkhf {
			min-width: 44px;
			min-height: 44px;
			font-size: 0.75rem;
		}

		.step-indicators.svelte-1vyxkhf {
			gap: 0.5rem;
		}
	}
