/**
 * CAPTAIN CATALOG 09 Phase C.3 — Captain Type card picker
 */

.fc-catalog-picker--compact {
	display: flex;
	flex-direction: column;
	gap: var(--fc-space-4, 1rem);
	max-width: 36rem;
	margin-inline: auto;
	width: 100%;
	text-align: left;
}

.fc-catalog-picker__panel {
	display: flex;
	flex-direction: column;
	gap: var(--fc-space-3, 0.75rem);
	align-items: stretch;
}

.fc-catalog-picker__panel h4,
.fc-catalog-card__title {
	margin: 0;
	color: var(--fc-color-ocean-navy, #0b2c3d);
}

.fc-catalog-picker__match-hint {
	margin: 0;
}

.fc-catalog-picker__service-label {
	margin: 0;
	font-weight: 600;
	color: var(--fc-color-slate, #344054);
}

.fc-catalog-picker__field {
	display: flex;
	flex-direction: column;
	gap: var(--fc-space-2, 0.5rem);
	text-align: left;
}

.fc-catalog-picker__select,
.fc-catalog-picker--compact .fc-input,
.fc-onboarding-location-search {
	width: 100%;
	max-width: 100%;
	min-height: 2.75rem;
	padding: 0.65rem 0.85rem;
	border: 1px solid var(--fc-color-border, #d0d5dd);
	border-radius: var(--fc-radius-md, 0.5rem);
	background: var(--fc-color-surface, #fff);
	color: var(--fc-color-text, #101828);
	font: inherit;
	line-height: 1.4;
	box-shadow: none;
	appearance: none;
}

.fc-catalog-picker__select:hover,
.fc-catalog-picker--compact .fc-input:hover,
.fc-onboarding-location-search:hover {
	border-color: var(--fc-color-border-strong, #98a2b3);
}

.fc-catalog-picker__select:focus,
.fc-catalog-picker__select:focus-visible,
.fc-catalog-picker--compact .fc-input:focus,
.fc-catalog-picker--compact .fc-input:focus-visible,
.fc-onboarding-location-search:focus,
.fc-onboarding-location-search:focus-visible {
	outline: 3px solid var(--fc-color-focus, #84caff);
	outline-offset: 2px;
	border-color: var(--fc-color-deep-blue, #1849a9);
	box-shadow: none;
}

.fc-catalog-cards {
	display: flex;
	flex-direction: column;
	gap: var(--fc-space-3, 0.75rem);
	width: 100%;
}

.fc-catalog-card {
	display: flex;
	flex-direction: column;
	gap: var(--fc-space-3, 0.75rem);
	padding: var(--fc-space-4, 1rem);
	border: 1px solid var(--fc-color-border, #d0d5dd);
	border-radius: var(--fc-radius-md, 0.5rem);
	background: var(--fc-color-surface, #fff);
	box-shadow: none;
}

.fc-catalog-card.is-expanded {
	border-color: color-mix(in srgb, var(--fc-color-deep-blue, #1849a9) 28%, var(--fc-color-border, #d0d5dd));
}

.fc-catalog-card__header {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: space-between;
	gap: var(--fc-space-2, 0.5rem);
}

.fc-catalog-card__title {
	font-size: 1.05rem;
	font-weight: 650;
	line-height: 1.35;
	flex: 1 1 auto;
}

.fc-catalog-card__remove {
	flex: 0 0 auto;
	padding-inline: 0.25rem;
	font-size: var(--fc-text-small, 0.875rem);
	opacity: 0.85;
}

.fc-catalog-card__body {
	display: flex;
	flex-direction: column;
	gap: 0.35rem;
	align-items: flex-start;
}

.fc-catalog-card__summary {
	margin: 0;
	color: var(--fc-color-slate, #344054);
	font-size: var(--fc-text-small, 0.875rem);
}

.fc-catalog-card__summary--secondary {
	color: var(--fc-color-muted, #667085);
}

.fc-catalog-card__empty {
	margin: 0;
	color: var(--fc-color-muted, #667085);
	font-size: var(--fc-text-small, 0.875rem);
}

.fc-catalog-card__toggle {
	padding-inline: 0;
	margin-top: 0.25rem;
}

.fc-catalog-card__editor {
	display: flex;
	flex-direction: column;
	gap: var(--fc-space-4, 1rem);
	text-align: left;
}

.fc-catalog-card__actions {
	display: flex;
	justify-content: flex-end;
}

.fc-catalog-chips,
.fc-onboarding-location-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
	list-style: none;
	margin: 0;
	padding: 0;
	max-width: 100%;
}

.fc-catalog-chip,
.fc-onboarding-location-chip {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	min-height: 2.25rem;
	max-width: 100%;
	padding: 0.25rem 0.35rem 0.25rem 0.75rem;
	border: 1px solid var(--fc-color-border, #d0d5dd);
	border-radius: 999px;
	background: color-mix(in srgb, var(--fc-color-surface, #fff) 92%, var(--fc-color-border, #d0d5dd));
	font-size: var(--fc-text-small, 0.875rem);
}

.fc-catalog-chip__label {
	overflow-wrap: anywhere;
}

.fc-catalog-chip--service {
	font-weight: 500;
}

.fc-catalog-chip--specialty {
	border-style: dashed;
	color: var(--fc-color-slate, #344054);
	font-weight: 400;
}

.fc-catalog-chip__remove,
.fc-onboarding-location-chip__remove {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 1.75rem;
	height: 1.75rem;
	flex: 0 0 auto;
	border: 0;
	border-radius: 999px;
	background: transparent;
	color: var(--fc-color-muted, #667085);
	cursor: pointer;
	font-size: 1.1rem;
	line-height: 1;
}

.fc-catalog-chip__remove:hover,
.fc-catalog-chip__remove:focus-visible,
.fc-onboarding-location-chip__remove:hover,
.fc-onboarding-location-chip__remove:focus-visible {
	background: color-mix(in srgb, var(--fc-color-danger, #b42318) 12%, transparent);
	color: var(--fc-color-danger, #b42318);
	outline: 2px solid var(--fc-color-focus, #84caff);
	outline-offset: 1px;
}

.fc-catalog-picker__add-another {
	margin: 0;
	color: var(--fc-color-muted, #667085);
	font-size: var(--fc-text-small, 0.875rem);
}

.fc-catalog-growth {
	margin-top: var(--fc-space-1, 0.25rem);
}

.fc-catalog-growth__launch {
	font-size: var(--fc-text-small, 0.875rem);
	padding-inline: 0;
}

.fc-catalog-growth__form {
	display: flex;
	flex-direction: column;
	gap: var(--fc-space-2, 0.5rem);
	margin-top: var(--fc-space-2, 0.5rem);
	padding: var(--fc-space-3, 0.75rem);
	border: 1px solid var(--fc-color-border, #d0d5dd);
	border-radius: var(--fc-radius-md, 0.5rem);
	background: var(--fc-color-surface, #fff);
}

.fc-catalog-growth__form[hidden] {
	display: none !important;
}

.fc-catalog-picker__status {
	min-height: 1.25rem;
	margin: 0;
	font-size: var(--fc-text-small, 0.875rem);
}

.fc-catalog-picker__status.is-error {
	color: var(--fc-color-danger, #b42318);
}

.fc-location-request-launch {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: var(--fc-space-2, 0.5rem);
	margin: 0;
}

.fc-location-request-launch__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 1.75rem;
	height: 1.75rem;
	border-radius: var(--fc-radius-full);
	background: color-mix(in srgb, var(--fc-color-seafoam, #19938f) 14%, var(--fc-color-surface, #fff));
	color: var(--fc-color-seafoam, #19938f);
	font-size: var(--fc-text-small, 0.875rem);
	font-weight: var(--fc-weight-semibold, 600);
	line-height: 1;
}

.fc-location-request-launch__title {
	margin: 0;
	color: var(--fc-color-ocean-navy, #0b1f33);
	font-size: var(--fc-text-body, 1rem);
	font-weight: var(--fc-weight-semibold, 600);
}

.fc-location-request-launch__copy {
	margin: 0;
	max-width: 22rem;
	color: var(--fc-color-muted, #55616d);
	font-size: var(--fc-text-small, 0.875rem);
	line-height: 1.45;
}

.fc-location-request-launch__action {
	min-height: var(--fc-touch-min, 2.75rem);
	padding-inline: 0.25rem;
	color: var(--fc-color-seafoam, #19938f);
	font-size: var(--fc-text-small, 0.875rem);
}

.fc-location-request-launch .fc-hint {
	display: inline;
	margin: 0;
	font-size: var(--fc-text-small, 0.875rem);
}

.fc-location-request-launch .fc-btn--text {
	font-size: var(--fc-text-small, 0.875rem);
	padding-inline: 0.25rem;
}

@media (max-width: 48rem) {
	.fc-catalog-picker--compact {
		max-width: 100%;
	}

	.fc-catalog-picker__select,
	.fc-catalog-picker--compact .fc-input,
	.fc-onboarding-location-search {
		min-height: 3rem;
	}

	.fc-catalog-card {
		padding: 0.85rem;
	}

	.fc-catalog-card__remove {
		min-height: 2.5rem;
		min-width: 2.5rem;
	}
}

@media (min-width: 48.01rem) and (max-width: 64rem) {
	.fc-catalog-picker--compact {
		max-width: 34rem;
	}
}
