
	.input-area-container.svelte-17o4r5d {
		width: 100%;
	}

	.input-form.svelte-17o4r5d {
		position: relative;
		width: 100%;
	}

	.input-wrapper.svelte-17o4r5d {
		background: white;
		border: 1px solid rgba(127, 98, 68, 0.1);
		border-radius: 8px;
		overflow: hidden;
		transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);
		position: relative;
	}

	.input-wrapper.svelte-17o4r5d:focus-within {
		border-color: rgba(234, 70, 33, 0.3);
	}

	.textarea-container.svelte-17o4r5d {
		position: relative;
	}

	.textarea-input.svelte-17o4r5d {
		width: 100%;
		border: none;
		background: transparent;
		resize: none;
		padding: 1.875rem;
		padding-bottom: 0;
		font-size: 0.875rem;
		line-height: 1.5;
		color: #4f4339;
		letter-spacing: -0.03em;
		outline: none;
		font-family: 'Relative Pro', system-ui, sans-serif;
		font-weight: 400;
		text-rendering: optimizeLegibility;
		-webkit-font-smoothing: antialiased;
		-moz-osx-font-smoothing: grayscale;
	}

	.textarea-input.svelte-17o4r5d::-moz-placeholder {
		color: rgba(127, 98, 68, 0.5);
		font-weight: 400;
		letter-spacing: -0.03em;
	}

	.textarea-input.svelte-17o4r5d::placeholder {
		color: rgba(127, 98, 68, 0.5);
		font-weight: 400;
		letter-spacing: -0.03em;
	}

	.textarea-input.svelte-17o4r5d:disabled {
		color: #c4a587;
		cursor: not-allowed;
		opacity: 0.6;
		transition: opacity 0.3s ease;
	}

	.textarea-input.svelte-17o4r5d:focus {
		outline: none;
		box-shadow: none;
		animation: svelte-17o4r5d-textareaGlow 0.3s ease-out;
	}

	@keyframes svelte-17o4r5d-textareaGlow {
		0% {
			transform: scale(1);
		}
		50% {
			transform: scale(1.005);
		}
		100% {
			transform: scale(1);
		}
	}

	.toolbar.svelte-17o4r5d {
		display: flex;
		justify-content: space-between;
		align-items: center;
		padding: 1rem 1.875rem;
		min-height: 38px;
	}

	.char-counter.svelte-17o4r5d {
		display: flex;
		align-items: center;
	}

	.counter-text.svelte-17o4r5d {
		font-size: 0.875rem;
		font-weight: 400;
		letter-spacing: -0.02em;
		transition: color 0.2s ease;
		font-family: 'Relative Pro', system-ui, sans-serif;
		font-feature-settings:
			'tnum' 1,
			'kern' 1;
		-webkit-font-smoothing: antialiased;
	}

	.counter-text.within-limits.svelte-17o4r5d {
		color: #7f6244;
	}

	.counter-text.over-limits.svelte-17o4r5d {
		color: #ea4621;
		animation: svelte-17o4r5d-pulse 1.5s ease-in-out infinite;
	}

	@keyframes svelte-17o4r5d-pulse {
		0%,
		100% {
			opacity: 1;
			transform: scale(1);
		}
		50% {
			opacity: 0.7;
			transform: scale(1.05);
		}
	}

	.submit-button.svelte-17o4r5d {
		background: #ea4621;
		color: #fbf5ee;
		border: none;
		border-radius: 5px;
		padding: 0.875rem 2rem;
		font-size: 0.875rem;
		font-weight: 700;
		letter-spacing: -0.02em;
		cursor: pointer;
		transition: all 0.2s ease;
		position: relative;
		overflow: hidden;
		font-family: 'Relative Pro Bold', 'Relative Pro', system-ui, sans-serif;
		text-rendering: optimizeLegibility;
		-webkit-font-smoothing: antialiased;
		min-width: 140px;
	}

	.submit-button.svelte-17o4r5d:hover {
		background: #c53a1a;
		transform: translateY(-1px);
		box-shadow: 0 4px 12px rgba(234, 70, 33, 0.2);
	}

	.submit-button.svelte-17o4r5d:active {
		transform: translateY(0);
		transition: transform 0.1s ease;
	}

	.submit-button.svelte-17o4r5d:disabled {
		background: #f2ede4;
		color: #c4a587;
		cursor: not-allowed;
		transform: none;
		box-shadow: none;
		transition: all 0.2s ease;
	}

	.submit-button.svelte-17o4r5d:not(:disabled) {
		animation: svelte-17o4r5d-buttonReady 0.3s ease-out;
	}

	@keyframes svelte-17o4r5d-buttonReady {
		0% {
			transform: scale(0.95);
			opacity: 0.8;
		}
		100% {
			transform: scale(1);
			opacity: 1;
		}
	}

	@media (max-width: 768px) {
		.textarea-input.svelte-17o4r5d {
			font-size: 1rem;
			padding: 1.25rem;
			padding-bottom: 0;
		}

		.toolbar.svelte-17o4r5d {
			padding: 0.875rem 1.25rem;
			flex-direction: column;
			gap: 0.75rem;
			align-items: stretch;
		}

		.submit-button.svelte-17o4r5d {
			width: 100%;
			padding: 0.875rem;
		}
	}

	@media (prefers-reduced-motion: reduce) {
		.input-wrapper.svelte-17o4r5d,
		.submit-button.svelte-17o4r5d,
		.counter-text.svelte-17o4r5d {
			transition: none;
		}

		.submit-button.svelte-17o4r5d::before {
			display: none;
		}
	}

	@media (prefers-contrast: high) {
		.input-wrapper.svelte-17o4r5d {
			background: white;
			border: 2px solid black;
		}

		.toolbar.svelte-17o4r5d {
			background: #f5f5f5;
			border-top: 2px solid black;
		}

		.submit-button.svelte-17o4r5d {
			background: #c53a1a;
		}

		.submit-button.svelte-17o4r5d:disabled {
			background: #999;
		}
	}
