/* ============================================================
   Cybercab Blog — Form styles
   ============================================================ */

.ccb-contact-form {
	display: flex;
	flex-direction: column;
	gap: var(--ccb-space-5);
	max-width: 680px;
}

.ccb-form-row {
	display: flex;
	flex-direction: column;
	gap: var(--ccb-space-2);
}

.ccb-form-label {
	font-family: var(--ccb-font-display);
	font-size: 0.875rem;
	font-weight: 600;
	color: var(--ccb-color-text-primary);
}

.ccb-form-input {
	width: 100%;
	padding: var(--ccb-space-3) var(--ccb-space-4);
	font-family: var(--ccb-font-body);
	font-size: 1rem;
	color: var(--ccb-color-text-primary);
	background: var(--ccb-color-white);
	border: 1px solid var(--ccb-color-border-light);
	border-radius: var(--ccb-radius);
	transition: border-color var(--ccb-transition), box-shadow var(--ccb-transition);
	appearance: none;
}

.ccb-form-input:focus {
	outline: none;
	border-color: var(--ccb-color-accent);
	box-shadow: 0 0 0 3px rgba(56, 189, 248, 0.15);
}

.ccb-form-input::placeholder {
	color: var(--ccb-color-text-muted);
	opacity: 0.7;
}

select.ccb-form-input {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%23475569' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: right 0.75rem center;
	background-size: 1.25em;
	padding-right: 2.5rem;
	cursor: pointer;
}

textarea.ccb-form-input {
	resize: vertical;
	min-height: 160px;
}

/* WordPress search form */
.search-form {
	display: flex;
	gap: var(--ccb-space-3);
	max-width: 480px;
	margin-top: var(--ccb-space-5);
}

.search-form label {
	flex: 1;
}

.search-form .search-field {
	width: 100%;
	padding: var(--ccb-space-3) var(--ccb-space-4);
	font-family: var(--ccb-font-body);
	font-size: 1rem;
	color: var(--ccb-color-text-primary);
	background: var(--ccb-color-white);
	border: 1px solid var(--ccb-color-border-light);
	border-radius: var(--ccb-radius);
	transition: border-color var(--ccb-transition);
}

.search-form .search-field:focus {
	outline: none;
	border-color: var(--ccb-color-accent);
	box-shadow: 0 0 0 3px rgba(56, 189, 248, 0.15);
}

.search-form .search-submit {
	padding: var(--ccb-space-3) var(--ccb-space-5);
	font-family: var(--ccb-font-display);
	font-size: 0.875rem;
	font-weight: 600;
	color: var(--ccb-color-bg-primary);
	background: var(--ccb-color-accent);
	border: none;
	border-radius: var(--ccb-radius);
	cursor: pointer;
	white-space: nowrap;
	transition: background var(--ccb-transition);
}

.search-form .search-submit:hover {
	background: var(--ccb-color-accent-secondary);
}

.search-form .search-submit:focus-visible {
	outline: 2px solid var(--ccb-color-accent);
	outline-offset: 2px;
}
