/* FlyGo flight UI */

.amadeus-style-flygo {
	--amadeus-primary: #ff6a00;
	--amadeus-secondary: #1f2937;
	--amadeus-border: #e5e7eb;
	--amadeus-bg: #ffffff;
	--amadeus-muted: #6b7280;
	--amadeus-flygo-select-chevron: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ff6a00' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");
	--amadeus-radius: 16px;
	--flygo-shell-bg: #ffffff;
	--flygo-shell-radius: 20px;
	--flygo-shell-padding: 20px;
	--flygo-tab-bg: #f3f4f6;
	--flygo-tab-color: #374151;
	--flygo-tab-active-bg: var(--amadeus-primary);
	--flygo-tab-active-color: #ffffff;
	--flygo-bar-bg: #ffffff;
	--flygo-bar-border: #e5e7eb;
	--flygo-bar-radius: 14px;
	--flygo-divider: #e5e7eb;
	--flygo-label-color: #9ca3af;
	--flygo-label-size: 11px;
	--flygo-input-color: #111827;
	--flygo-input-size: 16px;
	--flygo-icon-color: var(--amadeus-primary);
	--flygo-swap-bg: #ffffff;
	--flygo-swap-color: var(--amadeus-primary);
	--flygo-swap-size: 40px;
	--flygo-btn-bg: var(--amadeus-primary);
	--flygo-btn-color: #ffffff;
	--flygo-btn-radius: 12px;
	--flygo-field-min-height: 72px;
	--flygo-options-color: #6b7280;
}

.amadeus-flygo-shell {
	background: var(--flygo-shell-bg);
	border: 1px solid var(--amadeus-border);
	border-radius: var(--flygo-shell-radius);
	box-shadow: 0 18px 50px rgba(15, 23, 42, 0.08);
	padding: var(--flygo-shell-padding);
}

.amadeus-flygo-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	margin-bottom: 18px;
	flex-wrap: wrap;
}

.amadeus-flygo-tabs {
	display: flex;
	gap: 8px;
	flex-wrap: wrap;
}

.amadeus-flygo-tab {
	border: 0;
	background: var(--flygo-tab-bg);
	color: var(--flygo-tab-color);
	border-radius: 999px;
	padding: 10px 18px;
	font-size: 14px;
	font-weight: 600;
	cursor: pointer;
	transition: background 0.15s ease, color 0.15s ease;
}

.amadeus-flygo-tab.is-active {
	background: var(--flygo-tab-active-bg);
	color: var(--flygo-tab-active-color);
}

.amadeus-flygo-tab--disabled {
	opacity: 0.45;
	cursor: not-allowed;
}

.amadeus-flygo-miles {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	font-size: 14px;
	font-weight: 600;
	color: var(--flygo-options-color);
	cursor: pointer;
	margin-left: auto;
}

.amadeus-flygo-miles input {
	accent-color: var(--amadeus-primary);
}

.amadeus-style-flygo .amadeus-flygo-form .amadeus-flygo-field {
	margin-bottom: 0;
}

.amadeus-style-flygo .amadeus-flygo-form label.amadeus-flygo-option,
.amadeus-style-flygo .amadeus-flygo-form label.amadeus-flygo-miles {
	display: inline-flex !important;
	flex-direction: row;
	align-items: center;
	gap: 8px;
	margin-bottom: 0;
	font-weight: 500;
	font-size: 14px;
}

.amadeus-style-flygo .amadeus-flygo-form input[type="text"],
.amadeus-style-flygo .amadeus-flygo-form input[type="date"],
.amadeus-style-flygo .amadeus-flygo-form input[type="number"] {
	border: 0;
	background: transparent;
	padding: 0;
	border-radius: 0;
	box-shadow: none;
	min-height: 0;
	width: 100%;
}

.amadeus-style-flygo .amadeus-flygo-form input[type="text"]:focus,
.amadeus-style-flygo .amadeus-flygo-form input[type="date"]:focus {
	border: 0;
	box-shadow: none;
	background: transparent;
}

.amadeus-style-flygo .amadeus-flygo-form button:not(.amadeus-flygo-submit):not(.amadeus-flygo-travelers-done):not(.amadeus-flygo-stepper-btn):not(.amadeus-airline-picker-item):not(.amadeus-airline-chip-remove):not(.amadeus-flygo-advanced-reset) {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 0;
	border: 0;
	box-shadow: none;
	font-weight: inherit;
	transition: none;
}

.amadeus-style-flygo .amadeus-flygo-form button:not(.amadeus-flygo-submit):not(.amadeus-flygo-travelers-done):not(.amadeus-flygo-stepper-btn):not(.amadeus-airline-picker-item):not(.amadeus-airline-chip-remove):not(.amadeus-flygo-advanced-reset):hover,
.amadeus-style-flygo .amadeus-flygo-form button:not(.amadeus-flygo-submit):not(.amadeus-flygo-travelers-done):not(.amadeus-flygo-stepper-btn):not(.amadeus-airline-picker-item):not(.amadeus-airline-chip-remove):not(.amadeus-flygo-advanced-reset):active {
	transform: none;
	filter: none;
}

.amadeus-flygo-bar {
	display: flex;
	align-items: stretch;
	background: var(--flygo-bar-bg);
	border: 1px solid var(--flygo-bar-border);
	border-radius: var(--flygo-bar-radius);
	overflow: visible;
	position: relative;
	min-height: var(--flygo-field-min-height);
}

.amadeus-flygo-route {
	display: flex;
	align-items: stretch;
	flex: 3.4 1 0;
	min-width: 320px;
}

.amadeus-flygo-field {
	flex: 1 1 0;
	min-width: 0;
	padding: 14px 18px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	position: relative;
	gap: 2px;
}

.amadeus-flygo-route .amadeus-flygo-field--from,
.amadeus-flygo-route .amadeus-flygo-field--to {
	flex: 1 1 0;
	min-width: 130px;
	padding-right: 8px;
	padding-left: 18px;
}

.amadeus-flygo-route .amadeus-flygo-field--to {
	padding-left: 8px;
	padding-right: 14px;
}

.amadeus-flygo-field--departure,
.amadeus-flygo-field--return {
	flex: 0.8 1 0;
	position: relative;
	overflow: visible;
}

.amadeus-flygo-field--departure.is-fc-open,
.amadeus-flygo-field--return.is-fc-open {
	z-index: 40;
}

.amadeus-flygo-field--travelers {
	flex: 0.95 1 0;
}

.amadeus-flygo-field-label {
	display: block;
	font-size: var(--flygo-label-size);
	font-weight: 700;
	color: var(--flygo-label-color);
	margin: 0;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	line-height: 1.2;
}

.amadeus-flygo-field-body {
	display: flex;
	align-items: center;
	gap: 8px;
	min-height: 24px;
	width: 100%;
}

.amadeus-flygo-field-body--icon-end {
	justify-content: space-between;
}

.amadeus-flygo-route .amadeus-flygo-field-body input {
	flex: 1 1 auto;
	min-width: 0;
	width: 100%;
}

.amadeus-flygo-field-body--icon-end input,
.amadeus-flygo-field-body--icon-end .amadeus-flygo-travelers-trigger {
	flex: 1 1 auto;
	min-width: 0;
}

.amadeus-flygo-field-body--icon-end .amadeus-flygo-icon-svg {
	flex-shrink: 0;
	margin-left: 4px;
}

.amadeus-flygo-icon-svg {
	flex-shrink: 0;
	color: var(--flygo-icon-color);
}

.amadeus-flygo-field-body input,
.amadeus-flygo-travelers-trigger {
	width: 100%;
	border: 0;
	background: transparent;
	padding: 0;
	margin: 0;
	font-size: var(--flygo-input-size);
	font-weight: 700;
	color: var(--flygo-input-color);
	box-shadow: none;
	line-height: 1.3;
}

.amadeus-flygo-field-body input::placeholder {
	color: #9ca3af;
	font-weight: 500;
}

.amadeus-flygo-field-body input:focus {
	outline: none;
	box-shadow: none;
}

.amadeus-flygo-travelers-trigger {
	display: flex;
	align-items: center;
	width: 100%;
	text-align: left;
	cursor: pointer;
	background: transparent !important;
	color: var(--flygo-input-color) !important;
	padding: 0 !important;
	border-radius: 0 !important;
}

.amadeus-flygo-travelers-trigger:hover,
.amadeus-flygo-travelers-trigger:focus {
	background: transparent !important;
	color: var(--flygo-input-color) !important;
}

.amadeus-flygo-travelers-summary {
	font-size: var(--flygo-input-size);
	font-weight: 700;
	color: var(--flygo-input-color);
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.amadeus-flygo-divider {
	width: 1px;
	align-self: stretch;
	background: var(--flygo-divider);
	flex-shrink: 0;
}

.amadeus-flygo-swap {
	flex-shrink: 0;
	align-self: center;
	width: 34px;
	height: 34px;
	margin: 0 -6px;
	z-index: 2;
	border-radius: 50%;
	border: 0;
	background: var(--amadeus-primary) !important;
	color: #ffffff !important;
	padding: 0 !important;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	box-shadow: 0 4px 12px rgba(255, 106, 0, 0.35);
}

.amadeus-flygo-swap:hover {
	filter: brightness(1.05);
	color: #ffffff !important;
	background: var(--amadeus-primary) !important;
}

.amadeus-flygo-travelers {
	overflow: visible;
}

.amadeus-flygo-travelers-panel {
	position: absolute;
	top: calc(100% + 8px);
	right: 0;
	left: auto;
	width: 300px;
	max-width: min(300px, 92vw);
	z-index: 30;
	background: #fff;
	border: 1px solid var(--flygo-bar-border);
	border-radius: 14px;
	box-shadow: 0 16px 40px rgba(15, 23, 42, 0.12);
	padding: 16px;
	box-sizing: border-box;
}

.amadeus-flygo-travelers-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	padding: 10px 0;
	border-bottom: 1px solid #f3f4f6;
	min-width: 0;
}

.amadeus-flygo-travelers-row > div:first-child {
	flex: 1 1 auto;
	min-width: 0;
}

.amadeus-flygo-travelers-row strong {
	display: block;
	font-size: 14px;
	color: var(--amadeus-secondary);
}

.amadeus-flygo-travelers-row span {
	display: block;
	font-size: 12px;
	color: var(--amadeus-muted);
}

.amadeus-flygo-stepper {
	display: inline-flex;
	align-items: center;
	justify-content: flex-end;
	gap: 10px;
	flex-shrink: 0;
	min-width: 96px;
}

.amadeus-flygo-stepper span {
	display: inline-block;
	min-width: 18px;
	text-align: center;
	font-size: 14px;
	font-weight: 700;
	color: var(--amadeus-secondary);
}

.amadeus-flygo-stepper-btn {
	width: 32px;
	height: 32px;
	min-width: 32px;
	border: 1px solid var(--flygo-bar-border);
	border-radius: 50%;
	background: #fff;
	color: var(--amadeus-primary);
	font-size: 18px;
	line-height: 1;
	cursor: pointer;
	padding: 0;
	flex-shrink: 0;
}

.amadeus-flygo-class-label {
	display: block;
	margin: 14px 0 6px;
	font-size: 13px;
	font-weight: 600;
	color: var(--amadeus-secondary);
}

.amadeus-flygo-travelers-panel select {
	width: 100%;
	border: 1px solid var(--flygo-bar-border);
	border-radius: 10px;
	padding: 10px 36px 10px 12px;
	font-size: 14px;
	font-weight: 600;
	color: var(--flygo-input-color);
	background-color: #fff;
	background-image: var(--amadeus-flygo-select-chevron);
	background-repeat: no-repeat;
	background-position: right 12px center;
	background-size: 14px 14px;
	-webkit-appearance: none;
	appearance: none;
}

.amadeus-flygo-travelers-done {
	width: 100%;
	margin-top: 14px;
	border: 0;
	border-radius: 10px;
	background: var(--flygo-btn-bg);
	color: var(--flygo-btn-color);
	padding: 12px;
	font-size: 14px;
	font-weight: 700;
	cursor: pointer;
}

.amadeus-style-flygo .amadeus-flygo-form .amadeus-flygo-submit {
	flex-shrink: 0;
	align-self: stretch;
	display: flex !important;
	align-items: center;
	justify-content: center;
	gap: 8px;
	min-width: 180px;
	height: auto;
	min-height: 100%;
	margin: -1px -1px -1px 0;
	border: 0;
	border-radius: 0 calc(var(--flygo-bar-radius) - 1px) calc(var(--flygo-bar-radius) - 1px) 0;
	background: var(--flygo-btn-bg) !important;
	color: var(--flygo-btn-color) !important;
	padding: 0 28px !important;
	font-size: 16px;
	font-weight: 700;
	line-height: 1;
	white-space: nowrap;
	cursor: pointer;
	box-sizing: border-box;
}

.amadeus-style-flygo .amadeus-flygo-form .amadeus-flygo-submit:hover {
	filter: brightness(0.96);
	color: var(--flygo-btn-color);
}

/* Autocomplete dropdown (FlyGo) */
.amadeus-flygo-field-body .amadeus-autocomplete {
	flex: 1 1 auto;
	min-width: 0;
}

.amadeus-style-flygo .amadeus-autocomplete-mount {
	position: relative;
	z-index: 20;
}

.amadeus-style-flygo .amadeus-autocomplete-mount > .amadeus-autocomplete-list {
	top: calc(100% + 8px);
	left: 0;
	right: 0;
	z-index: 60;
	background: #fff;
	border: 1px solid var(--flygo-bar-border);
	border-radius: 14px;
	box-shadow: 0 18px 44px rgba(15, 23, 42, 0.14);
	max-height: 300px;
	overflow-y: auto;
	padding: 8px;
	-webkit-overflow-scrolling: touch;
	min-width: 300px;
}

.amadeus-style-flygo .amadeus-autocomplete-item {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 11px 12px;
	border-radius: 10px;
	cursor: pointer;
	transition: background 0.12s ease;
}

.amadeus-style-flygo .amadeus-autocomplete-item + .amadeus-autocomplete-item {
	margin-top: 2px;
}

.amadeus-style-flygo .amadeus-autocomplete-item:hover,
.amadeus-style-flygo .amadeus-autocomplete-item.is-active {
	background: #fff7ed;
}

.amadeus-style-flygo .amadeus-ac-code {
	flex: 0 0 46px;
	font-size: 16px;
	font-weight: 800;
	color: var(--amadeus-primary);
	letter-spacing: 0.03em;
	line-height: 1;
}

.amadeus-style-flygo .amadeus-ac-body {
	flex: 1 1 auto;
	min-width: 0;
}

.amadeus-style-flygo .amadeus-ac-name {
	display: block;
	font-size: 14px;
	font-weight: 600;
	color: var(--flygo-input-color);
	line-height: 1.35;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	text-transform: none;
}

.amadeus-style-flygo .amadeus-ac-meta {
	display: block;
	font-size: 12px;
	font-weight: 500;
	color: var(--amadeus-muted);
	line-height: 1.3;
	margin-top: 2px;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	text-transform: none;
}

.amadeus-flygo-options {
	display: flex;
	align-items: center;
	gap: 24px;
	flex-wrap: wrap;
	margin-top: 14px;
	padding: 0 2px;
}

.amadeus-flygo-option {
	display: inline-flex;
	flex-direction: row;
	flex-wrap: nowrap;
	align-items: center;
	gap: 8px;
	font-size: 14px;
	font-weight: 500;
	color: var(--flygo-options-color);
	cursor: pointer;
	margin: 0;
	white-space: nowrap;
}

.amadeus-flygo-option-label {
	display: inline-flex;
	flex-direction: row;
	flex-wrap: nowrap;
	align-items: center;
	gap: 6px;
}

.amadeus-style-flygo .amadeus-flygo-form input[type="checkbox"] {
	appearance: auto;
	-webkit-appearance: checkbox;
	width: 16px !important;
	height: 16px !important;
	min-width: 16px !important;
	max-width: 16px !important;
	flex: 0 0 16px !important;
	min-height: 0 !important;
	padding: 0 !important;
	margin: 0 !important;
	border: 1px solid #d1d5db !important;
	border-radius: 4px !important;
	background: #fff !important;
	accent-color: var(--amadeus-primary);
}

.amadeus-flygo-option input[type="checkbox"] {
	flex-shrink: 0;
}

.amadeus-flygo-miles input[type="checkbox"] {
	width: 16px !important;
	height: 16px !important;
	min-height: 0 !important;
	padding: 0 !important;
	margin: 0 !important;
	flex-shrink: 0;
	accent-color: var(--amadeus-primary);
}

.amadeus-flygo-advanced {
	margin-left: auto;
	display: inline-flex;
	align-items: center;
	gap: 4px;
	border: 0 !important;
	background: transparent !important;
	color: var(--amadeus-primary) !important;
	font-size: 14px;
	font-weight: 700;
	cursor: pointer;
	padding: 0 !important;
	white-space: nowrap;
}

.amadeus-flygo-advanced:hover {
	background: transparent !important;
	color: var(--amadeus-primary) !important;
	filter: brightness(0.92);
}

.amadeus-flygo-advanced.is-open .amadeus-flygo-advanced-chevron {
	transform: rotate(180deg);
}

.amadeus-flygo-advanced-panel.amadeus-flygo-advanced-panel--search:not(.is-open),
.amadeus-flygo-advanced-panel.amadeus-flygo-advanced-panel--search[hidden] {
	display: none !important;
}

.amadeus-flygo-advanced-panel.amadeus-flygo-advanced-panel--search.is-open {
	display: block !important;
}

.amadeus-flygo-advanced-panel.amadeus-flygo-advanced-panel--search {
	position: static !important;
	top: auto !important;
	left: auto !important;
	right: auto !important;
	margin-top: 14px;
	padding: 0 !important;
	border: 1px solid #e8edf2;
	border-radius: 18px;
	box-shadow: 0 12px 36px rgba(15, 23, 42, 0.08);
	overflow: visible;
	background: #fff;
	z-index: 5;
}

.amadeus-flygo-advanced-panel--search .amadeus-flygo-advanced-head {
	display: flex;
	align-items: center;
	gap: 14px;
	padding: 20px 24px 18px;
	border-bottom: 1px solid #e8edf2;
}

.amadeus-flygo-advanced-panel--search .amadeus-flygo-advanced-head-icon {
	width: 44px;
	height: 44px;
	border-radius: 12px;
	background: #fff1e8;
	color: var(--amadeus-primary);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
}

.amadeus-flygo-advanced-panel--search .amadeus-flygo-advanced-head-copy {
	display: flex;
	flex-direction: column;
	gap: 4px;
}

.amadeus-flygo-advanced-panel--search .amadeus-flygo-advanced-head-copy strong {
	font-size: 14px;
	font-weight: 800;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: #111827;
}

.amadeus-flygo-advanced-panel--search .amadeus-flygo-advanced-head-copy span {
	font-size: 14px;
	color: #6b7280;
	font-weight: 400;
}

.amadeus-flygo-advanced-panel--search .amadeus-flygo-advanced-body {
	display: grid !important;
	grid-template-columns: minmax(0, 1.15fr) minmax(0, 0.85fr);
	gap: 0 36px;
	padding: 24px 28px;
	overflow: visible;
	align-items: start;
}

.amadeus-flygo-advanced-panel--search .amadeus-flygo-advanced-col {
	display: flex;
	flex-direction: column;
	gap: 22px;
	min-width: 0;
	overflow: visible;
}

.amadeus-flygo-advanced-panel--search .amadeus-flygo-advanced-col--airlines {
	grid-column: 1;
}

.amadeus-flygo-advanced-panel--search .amadeus-flygo-advanced-col--settings {
	grid-column: 2;
	border-left: 1px solid #e8edf2;
	padding-left: 36px;
	align-self: stretch;
}

.amadeus-flygo-advanced-panel--search .amadeus-flygo-advanced-divider {
	display: none !important;
}

.amadeus-flygo-advanced-panel--search .amadeus-flygo-advanced-field label {
	display: block !important;
	margin-bottom: 10px !important;
	font-size: 12px !important;
	font-weight: 800 !important;
	letter-spacing: 0.05em !important;
	text-transform: uppercase !important;
	color: #111827 !important;
}

.amadeus-flygo-advanced-panel--search .amadeus-flygo-advanced-field input[type="text"],
.amadeus-flygo-advanced-panel--search .amadeus-airline-picker-search {
	width: 100% !important;
	min-height: 48px !important;
	max-width: 100% !important;
	border: 1px solid #dbe2ea !important;
	border-radius: 12px !important;
	padding: 12px 14px !important;
	font-size: 15px !important;
	font-weight: 500 !important;
	color: #111827 !important;
	background: #fff !important;
	box-shadow: none !important;
}

.amadeus-flygo-advanced-panel--search .amadeus-flygo-advanced-field--inline .amadeus-flygo-advanced-inline-control {
	display: flex;
	align-items: center;
	gap: 16px;
}

.amadeus-flygo-advanced-panel--search .amadeus-flygo-advanced-field--inline input[type="number"] {
	width: 72px !important;
	min-width: 72px !important;
	max-width: 72px !important;
	flex: 0 0 72px !important;
	min-height: 48px !important;
	border: 1px solid #dbe2ea !important;
	border-radius: 12px !important;
	padding: 10px 12px !important;
	font-size: 16px !important;
	font-weight: 600 !important;
	color: #111827 !important;
	background: #fff !important;
	text-align: center;
}

.amadeus-flygo-advanced-panel--search .amadeus-flygo-advanced-inline-hint,
.amadeus-flygo-advanced-panel--search .amadeus-flygo-field-hint {
	display: block;
	margin-top: 8px;
	font-size: 13px;
	color: #6b7280;
	font-weight: 400;
	line-height: 1.45;
}

.amadeus-flygo-advanced-panel--search .amadeus-flygo-advanced-inline-hint {
	margin-top: 0;
	flex: 1 1 auto;
}

.amadeus-flygo-advanced-panel--search .amadeus-flygo-advanced-foot {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	flex-wrap: wrap;
	padding: 16px 24px;
	background: #fff7ed;
	border-top: 1px solid #fde6d3;
}

.amadeus-flygo-advanced-panel--search .amadeus-flygo-advanced-tip {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	margin: 0;
	font-size: 13px;
	line-height: 1.5;
	color: #6b7280;
	flex: 1 1 260px;
}

.amadeus-flygo-advanced-panel--search .amadeus-flygo-advanced-tip svg {
	flex-shrink: 0;
	margin-top: 2px;
	color: var(--amadeus-primary);
}

.amadeus-flygo-advanced-panel--search .amadeus-flygo-advanced-reset {
	display: inline-flex !important;
	align-items: center;
	gap: 8px;
	border: 0 !important;
	background: var(--amadeus-primary) !important;
	color: #fff !important;
	font-size: 14px !important;
	font-weight: 700 !important;
	cursor: pointer;
	padding: 11px 18px !important;
	border-radius: 12px !important;
	box-shadow: none !important;
	min-width: 0 !important;
	transform: none !important;
}

.amadeus-flygo-advanced-panel--search .amadeus-flygo-advanced-reset:hover,
.amadeus-flygo-advanced-panel--search .amadeus-flygo-advanced-reset:active {
	background: var(--amadeus-primary) !important;
	color: #fff !important;
	filter: brightness(0.94);
	transform: none !important;
}

.amadeus-flygo-advanced-panel--search .amadeus-flygo-advanced-reset svg {
	color: #fff;
	stroke: #fff;
}

.amadeus-flygo-advanced-panel--search .amadeus-flygo-advanced-field {
	border-bottom: 0 !important;
	padding-bottom: 0 !important;
	margin-bottom: 0 !important;
}

.amadeus-flygo-advanced-panel--search .amadeus-airline-picker {
	position: relative;
	overflow: visible;
	border-bottom: 0 !important;
}

.amadeus-flygo-advanced-panel--search .amadeus-airline-picker-input-wrap {
	position: relative;
	overflow: visible;
	border-bottom: 0 !important;
}

.amadeus-flygo-advanced-panel--search .amadeus-airline-picker-list[hidden] {
	display: none !important;
	visibility: hidden !important;
	height: 0 !important;
	min-height: 0 !important;
	max-height: 0 !important;
	padding: 0 !important;
	margin: 0 !important;
	border: 0 !important;
	box-shadow: none !important;
	overflow: hidden !important;
}

.amadeus-flygo-advanced-panel--search .amadeus-airline-picker-search {
	border: 1px solid #dbe2ea !important;
}

.amadeus-flygo-advanced-panel--search .amadeus-flygo-field-hint {
	border-top: 0 !important;
	border-bottom: 0 !important;
	padding-top: 0;
}

.amadeus-flygo-advanced-panel--search .amadeus-airline-picker-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-bottom: 10px;
}

.amadeus-flygo-advanced-panel--search .amadeus-airline-chip {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 8px 12px;
	border-radius: 999px;
	background: #fff1e8;
	color: #111827;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.02em;
	text-transform: uppercase;
}

.amadeus-flygo-advanced-panel--search .amadeus-airline-chip-remove {
	border: 0 !important;
	background: transparent !important;
	color: var(--amadeus-primary) !important;
	font-size: 18px !important;
	line-height: 1;
	cursor: pointer;
	padding: 0 !important;
	min-width: 0 !important;
	box-shadow: none !important;
}

.amadeus-flygo-advanced-panel--search .amadeus-airline-picker-input-wrap {
	position: relative;
	overflow: visible;
}

.amadeus-flygo-advanced-panel--search .amadeus-airline-picker-list {
	position: absolute;
	top: calc(100% + 8px);
	left: 0;
	right: 0;
	z-index: 60;
	background: #fff !important;
	border: 1px solid #dbe2ea !important;
	border-radius: 12px !important;
	box-shadow: 0 16px 40px rgba(15, 23, 42, 0.12) !important;
	max-height: 240px;
	overflow-x: hidden;
	overflow-y: auto;
	padding: 0;
}

.amadeus-flygo-advanced-panel--search .amadeus-airline-picker-list.is-open:not([hidden]) {
	display: flex !important;
	flex-direction: column !important;
}

.amadeus-flygo-advanced-panel--search .amadeus-airline-picker-item {
	display: flex !important;
	flex: 0 0 auto !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 16px;
	width: 100% !important;
	max-width: 100% !important;
	border: 0 !important;
	border-bottom: 1px solid #f1f5f9 !important;
	background: transparent !important;
	color: #111827 !important;
	text-align: left !important;
	padding: 12px 14px !important;
	cursor: pointer;
	border-radius: 0 !important;
	font-size: 15px !important;
	font-weight: 500 !important;
	min-height: 0 !important;
	box-shadow: none !important;
	white-space: nowrap;
}

.amadeus-flygo-advanced-panel--search .amadeus-airline-picker-name {
	flex: 1 1 auto;
	min-width: 0;
	font-size: 15px;
	font-weight: 500;
	color: #111827;
	text-align: left;
	overflow: hidden;
	text-overflow: ellipsis;
}

.amadeus-flygo-advanced-panel--search .amadeus-airline-picker-code {
	flex: 0 0 auto;
	margin-left: auto;
	font-size: 12px;
	font-weight: 800;
	color: var(--amadeus-primary);
	text-align: right;
	min-width: 0;
}

.amadeus-flygo-advanced-panel--search .amadeus-airline-picker-item:last-child {
	border-bottom: 0 !important;
}

.amadeus-flygo-advanced-panel--search .amadeus-airline-picker-item:hover,
.amadeus-flygo-advanced-panel--search .amadeus-airline-picker-item:focus {
	background: #fff7f2 !important;
	color: #111827 !important;
	outline: none;
}

.amadeus-flygo-advanced-panel--search .amadeus-airline-picker-empty {
	padding: 12px 16px;
	font-size: 13px;
	color: #6b7280;
}

.amadeus-flygo-advanced-panel--search .amadeus-airline-picker-list.is-loading {
	pointer-events: none;
}

.amadeus-flygo-advanced-panel--search .amadeus-airline-picker-list .amadeus-autocomplete-status {
	padding: 8px 14px 4px;
	font-size: 12px;
	font-weight: 600;
	color: #6b7280;
}

.amadeus-flygo-advanced-panel--search .amadeus-airline-picker-item--shimmer {
	pointer-events: none;
	cursor: default;
	border-bottom-color: #f1f5f9 !important;
}

.amadeus-flygo-advanced-panel--search .amadeus-airline-picker-item--shimmer .amadeus-airline-picker-name {
	flex: 1 1 auto;
	min-width: 0;
}

.amadeus-flygo-advanced-panel--search .amadeus-airline-picker-item--shimmer .amadeus-airline-picker-code {
	flex: 0 0 44px;
	width: 44px;
	height: 18px;
	margin-left: auto;
	border-radius: 4px;
}

.amadeus-flights-wrap.amadeus-style-flygo .amadeus-flygo-form button.amadeus-flygo-advanced {
	background: transparent !important;
	color: var(--amadeus-primary) !important;
	padding: 0 !important;
}

@media (max-width: 768px) {
	.amadeus-flygo-advanced-panel--search .amadeus-flygo-advanced-body {
		grid-template-columns: 1fr;
		gap: 0;
		padding: 18px;
	}

	.amadeus-flygo-advanced-panel--search .amadeus-flygo-advanced-col--settings {
		grid-column: 1;
		border-left: 0;
		padding-left: 0;
		padding-top: 18px;
		margin-top: 6px;
		border-top: 1px solid #e8edf2;
	}

	.amadeus-flygo-advanced-panel--search .amadeus-flygo-advanced-foot {
		padding: 14px 18px;
		flex-direction: column;
		align-items: stretch;
	}

	.amadeus-flygo-advanced-panel--search .amadeus-flygo-advanced-reset {
		justify-content: center;
		width: 100%;
	}
}

.amadeus-flygo-panel select {
	width: 100%;
	border: 0;
	background: transparent;
	min-height: 48px;
	padding: 0;
	font-size: 15px;
	font-weight: 600;
	color: var(--amadeus-secondary);
	box-shadow: none;
}

.amadeus-flygo-summary {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 16px;
	background: #fff;
	border: 1px solid var(--amadeus-border);
	border-radius: 16px;
	padding: 16px 20px;
	margin-bottom: 18px;
}

.amadeus-flygo-summary-route {
	display: flex;
	flex-direction: column;
	gap: 4px;
}

.amadeus-flygo-summary-route strong {
	font-size: 20px;
}

.amadeus-flygo-summary-route span {
	color: var(--amadeus-muted);
	font-size: 14px;
}

/* Results page */
.amadeus-flights-results {
	background: #f3f4f6;
	padding: 24px 16px 40px;
	/* max-width: 1240px; */
	margin: 0 auto;
	overflow: visible;
}

.amadeus-flygo-summary-bar {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 20px;
	background: #fff;
	border: 1px solid var(--amadeus-border);
	border-radius: 14px;
	padding: 18px 22px;
	box-shadow: 0 8px 24px rgba(15, 23, 42, 0.04);
}

.amadeus-flygo-top {
	position: relative;
	z-index: 20;
	margin-bottom: 16px;
}

.amadeus-flygo-summary-cta {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	gap: 8px;
	flex-shrink: 0;
	min-width: 160px;
}

.amadeus-flygo-advanced-toggle {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	border: 0;
	background: transparent;
	color: var(--amadeus-primary);
	font-size: 13px;
	font-weight: 700;
	cursor: pointer;
	padding: 4px 0;
}

.amadeus-flygo-advanced-toggle:hover {
	opacity: 0.85;
}

.amadeus-flygo-advanced-chevron {
	transition: transform 0.2s ease;
}

.amadeus-flygo-advanced-toggle.is-open .amadeus-flygo-advanced-chevron {
	transform: rotate(180deg);
}

.amadeus-flygo-advanced-panel {
	position: absolute;
	top: calc(100% + 10px);
	left: 0;
	right: 0;
	z-index: 30;
	background: #fff;
	border: 1px solid var(--amadeus-border);
	border-radius: 14px;
	padding: 18px 22px;
	box-shadow: 0 12px 32px rgba(15, 23, 42, 0.12);
	max-width: 100%;
	box-sizing: border-box;
}

.amadeus-flygo-modify-close {
	position: absolute;
	top: 14px;
	right: 14px;
	z-index: 2;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 34px;
	height: 34px;
	border: 0;
	border-radius: 10px;
	background: transparent;
	color: var(--amadeus-muted);
	cursor: pointer;
	padding: 0;
}

.amadeus-flygo-modify-close:hover,
.amadeus-flygo-modify-close:focus {
	background: #f3f4f6;
	color: var(--amadeus-secondary);
	outline: none;
}

.amadeus-flygo-advanced-panel:has(.amadeus-flygo-modify-close) .amadeus-flygo-advanced-grid {
	padding-right: 28px;
}

.amadeus-flygo-advanced-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 14px 16px;
	min-width: 0;
}

.amadeus-flygo-advanced-field {
	min-width: 0;
}

.amadeus-flygo-advanced-trip {
	grid-column: 1 / -1;
	display: flex;
	gap: 18px;
}

.amadeus-flygo-advanced-radio {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	font-size: 13px;
	font-weight: 600;
	color: var(--amadeus-secondary);
	cursor: pointer;
}

.amadeus-flygo-advanced-field label {
	/* display: block; */
	font-size: 11px;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	color: var(--amadeus-muted);
	margin-bottom: 6px;
}

.amadeus-flygo-advanced-field.amadeus-autocomplete-wrap,
.amadeus-flygo-advanced-field.amadeus-fc-field {
	position: relative;
	min-width: 0;
	overflow: visible;
	z-index: 1;
}

.amadeus-flygo-advanced-field.amadeus-fc-field.is-fc-open {
	z-index: 40;
}

.amadeus-flights-results.is-fc-open {
	overflow-x: visible;
}

.amadeus-flights-results.is-fc-open .amadeus-flygo-advanced-panel:not([hidden]) {
	overflow: visible;
}

.amadeus-flygo-advanced-grid .amadeus-autocomplete-wrap {
	min-width: 180px;
}

.amadeus-flygo-advanced-field input[type="text"],
.amadeus-flygo-advanced-field input[type="date"],
.amadeus-flygo-advanced-field input[type="number"],
.amadeus-flygo-advanced-field select {
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
	border: 1px solid var(--amadeus-border);
	border-radius: 10px;
	padding: 10px 12px;
	font-size: 14px;
	font-weight: 600;
	color: var(--amadeus-secondary);
	background: #fff;
	box-shadow: none;
	min-height: 42px;
}

.amadeus-flygo-advanced-field select,
.amadeus-flygo-modify-field select,
.amadeus-flygo-travelers-panel select,
.amadeus-flygo-results-sort select {
	padding-right: 36px;
	-webkit-appearance: none;
	appearance: none;
	background-color: #fff;
	background-image: var(--amadeus-flygo-select-chevron);
	background-repeat: no-repeat;
	background-position: right 12px center;
	background-size: 14px 14px;
}

.amadeus-flygo-advanced-field--airlines {
	grid-column: 1 / -1;
}

.amadeus-flygo-advanced-airlines {
	display: flex;
	flex-wrap: wrap;
	gap: 8px 14px;
}

.amadeus-flygo-advanced-airline {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	font-size: 13px;
	font-weight: 600;
	color: var(--amadeus-secondary);
	cursor: pointer;
}

.amadeus-flygo-advanced-actions {
	margin-top: 16px;
	padding-top: 16px;
	border-top: 1px solid var(--amadeus-border);
}

.amadeus-flygo-advanced-actions .amadeus-flygo-update-search {
	border-radius: 10px;
	background: var(--amadeus-primary) !important;
	color: #fff !important;
	font-weight: 700;
	padding: 12px 24px;
}

.amadeus-flygo-results-advanced-fields {
	grid-column: 1 / -1;
	margin-top: 4px;
	padding-top: 16px;
	border-top: 1px solid var(--amadeus-border);
	overflow: visible;
}

.amadeus-flygo-results-advanced-fields[hidden] {
	display: none !important;
}

.amadeus-flygo-advanced-body--embed {
	display: grid !important;
	grid-template-columns: minmax(0, 1.15fr) minmax(0, 0.85fr);
	gap: 16px 20px;
	overflow: visible;
	align-items: start;
	padding: 0;
}

.amadeus-flygo-results-advanced-fields .amadeus-flygo-advanced-col {
	display: flex;
	flex-direction: column;
	gap: 16px;
	min-width: 0;
	overflow: visible;
}

@media (max-width: 768px) {
	.amadeus-flygo-advanced-body--embed {
		grid-template-columns: 1fr;
		gap: 0;
	}

	.amadeus-flygo-results-advanced-fields .amadeus-flygo-advanced-col--settings {
		padding-top: 14px;
		margin-top: 6px;
		border-top: 1px solid var(--amadeus-border);
	}
}

.amadeus-flights-results .amadeus-flygo-advanced-panel:not([hidden]) {
	overflow: visible;
}

.amadeus-flights-results .amadeus-flygo-top {
	overflow: visible;
}

.amadeus-flights-results.is-modify-open {
	overflow-x: visible;
}

.amadeus-flygo-time-slots {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 8px;
}

.amadeus-flygo-time-slot {
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 10px;
	border: 1px solid var(--amadeus-border);
	border-radius: 10px;
	cursor: pointer;
	transition: border-color 0.15s ease, background 0.15s ease;
}

.amadeus-flygo-time-slot.is-checked {
	border-color: var(--amadeus-primary);
	background: #fff7ed;
}

.amadeus-flygo-time-slot input {
	position: absolute;
	opacity: 0;
	pointer-events: none;
}

.amadeus-flygo-time-slot-icon {
	color: var(--amadeus-primary);
	flex-shrink: 0;
	display: flex;
}

.amadeus-flygo-time-slot-text {
	display: flex;
	flex-direction: column;
	gap: 1px;
	min-width: 0;
}

.amadeus-flygo-time-slot-text strong {
	font-size: 12px;
	font-weight: 700;
	color: var(--amadeus-secondary);
}

.amadeus-flygo-time-slot-text span {
	font-size: 10px;
	color: var(--amadeus-muted);
	line-height: 1.2;
}

.amadeus-flygo-clear-filters {
	border: 0;
	background: transparent;
	color: var(--amadeus-primary);
	font-size: 13px;
	font-weight: 700;
	padding: 0;
	cursor: pointer;
	white-space: nowrap;
}

.amadeus-flygo-clear-filters:hover {
	opacity: 0.85;
}

.amadeus-flygo-filters-close {
	display: none;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
	padding: 0;
	border: 1px solid var(--amadeus-border);
	border-radius: 999px;
	background: #fff;
	color: var(--amadeus-secondary);
	cursor: pointer;
	flex-shrink: 0;
	appearance: none;
	-webkit-appearance: none;
	line-height: 0;
}

.amadeus-flygo-filters-close svg {
	display: block;
	width: 18px;
	height: 18px;
	flex-shrink: 0;
	stroke: currentColor;
	color: var(--amadeus-secondary);
	pointer-events: none;
}

.amadeus-flygo-filters-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	margin-bottom: 16px;
	padding-bottom: 14px;
	border-bottom: 1px solid var(--amadeus-border);
	align-items: flex-start;
}

.amadeus-flygo-filters-head h3 {
	margin: 0;
	font-size: 18px;
	font-weight: 800;
	color: var(--amadeus-secondary);
}

.amadeus-flygo-panel--filters {
	max-height: calc(100vh - 40px);
	overflow-y: auto;
	overscroll-behavior: contain;
	scrollbar-width: thin;
}

.amadeus-flygo-panel--filters::-webkit-scrollbar {
	width: 6px;
}

.amadeus-flygo-panel--filters::-webkit-scrollbar-thumb {
	background: #d1d5db;
	border-radius: 999px;
}

.amadeus-flygo-summary-fields {
	display: flex;
	flex-wrap: wrap;
	flex: 1;
	min-width: 0;
}

.amadeus-flygo-summary-field {
	display: flex;
	flex-direction: column;
	gap: 4px;
	flex: 1 1 140px;
	min-width: 0;
	padding-right: 12px;
}

.amadeus-flygo-summary-label {
	font-size: 11px;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	color: var(--amadeus-muted);
}

.amadeus-flygo-summary-field strong {
	font-size: 15px;
	font-weight: 700;
	color: var(--amadeus-secondary);
}

.amadeus-flygo-modify-btn {
	flex-shrink: 0;
	border: 0;
	border-radius: 10px;
	padding: 12px 22px;
	font-weight: 700;
	white-space: nowrap;
	background: var(--amadeus-primary) !important;
	color: #fff !important;
	cursor: pointer;
	font-family: inherit;
	font-size: inherit;
	line-height: inherit;
}

.amadeus-flygo-modify-btn.is-open {
	filter: brightness(0.92);
}

.amadeus-flygo-modify-btn:hover {
	filter: brightness(0.95);
	color: #fff;
}

.amadeus-flygo-layout {
	display: grid;
	grid-template-columns: 300px minmax(0, 1fr);
	gap: 16px;
}

.amadeus-flygo-layout--results {
	align-items: start;
}

.amadeus-flygo-layout--no-sidebar .amadeus-flygo-layout--results {
	grid-template-columns: minmax(0, 1fr);
}

.amadeus-flygo-sidebar {
	display: flex;
	flex-direction: column;
	gap: 16px;
	align-self: start;
}

@media (min-width: 901px) {
	.amadeus-flygo-layout--results .amadeus-flygo-sidebar {
		position: sticky;
		top: 20px;
		z-index: 5;
		max-height: calc(100vh - 40px);
	}
}

.amadeus-flygo-panel {
	background: #fff;
	border: 1px solid var(--amadeus-border);
	border-radius: 14px;
	padding: 18px;
}

.amadeus-flygo-panel h3,
.amadeus-flygo-panel h4 {
	margin: 0 0 12px;
	font-size: 16px;
	font-weight: 700;
	color: var(--amadeus-secondary);
}

.amadeus-flygo-panel h4 {
	font-size: 13px;
	margin-bottom: 10px;
}

.amadeus-flygo-modify-form {
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.amadeus-flygo-modify-trip {
	display: flex;
	gap: 16px;
	margin-bottom: 4px;
}

.amadeus-flygo-modify-radio {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	font-size: 13px;
	font-weight: 600;
	color: var(--amadeus-secondary);
	cursor: pointer;
}

.amadeus-flygo-modify-field label {
	display: block;
	font-size: 11px;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	color: var(--amadeus-muted);
	margin-bottom: 6px;
}

.amadeus-flygo-modify-field input[type="text"],
.amadeus-flygo-modify-field input[type="date"] {
	width: 100%;
	border: 1px solid var(--amadeus-border);
	border-radius: 10px;
	padding: 10px 12px;
	font-size: 14px;
	font-weight: 600;
	color: var(--amadeus-secondary);
	background: #fff;
	box-shadow: none;
	min-height: 42px;
}

.amadeus-flygo-modify-field select {
	width: 100%;
	border: 1px solid var(--amadeus-border);
	border-radius: 10px;
	padding: 10px 36px 10px 12px;
	font-size: 14px;
	font-weight: 600;
	color: var(--amadeus-secondary);
	box-shadow: none;
	min-height: 42px;
}

.amadeus-flygo-modify-field input:focus,
.amadeus-flygo-modify-field select:focus {
	border-color: var(--amadeus-primary);
	outline: none;
	box-shadow: 0 0 0 3px rgba(255, 106, 0, 0.12);
}

.amadeus-flygo-update-search {
	width: 100%;
	margin-top: 4px;
	border-radius: 10px;
	background: var(--amadeus-primary) !important;
	color: #fff !important;
	font-weight: 700;
	padding: 12px 16px;
}

.amadeus-flygo-filter-group {
	margin-bottom: 18px;
	padding-bottom: 18px;
	border-bottom: 1px solid var(--amadeus-border);
}

.amadeus-flygo-filter-group:last-child {
	margin-bottom: 0;
	padding-bottom: 0;
	border-bottom: 0;
}

.amadeus-flygo-filter-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	margin-bottom: 10px;
	font-size: 14px;
	cursor: pointer;
	line-height: 1.2;
}

.amadeus-flygo-filter-check {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	color: var(--amadeus-secondary);
	min-width: 0;
	flex: 1;
}

.amadeus-flygo-filter-label {
	font-size: 14px;
	font-weight: 500;
	line-height: 1.2;
}

.amadeus-flygo-filter-price {
	font-size: 14px;
	font-weight: 700;
	color: var(--amadeus-secondary);
	white-space: nowrap;
	line-height: 1.2;
	flex-shrink: 0;
}

.amadeus-flygo-checkbox-input {
	position: absolute;
	opacity: 0;
	width: 1px;
	height: 1px;
	pointer-events: none;
}

.amadeus-flygo-checkbox-box {
	width: 18px;
	height: 18px;
	border: 2px solid #d1d5db;
	border-radius: 5px;
	background: #fff;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	transition: background 0.15s ease, border-color 0.15s ease;
}

.amadeus-flygo-checkbox-box svg {
	color: #fff;
	opacity: 0;
	transform: scale(0.6);
	transition: opacity 0.15s ease, transform 0.15s ease;
}

.amadeus-flygo-checkbox-input:checked + .amadeus-flygo-checkbox-box {
	background: var(--amadeus-primary);
	border-color: var(--amadeus-primary);
}

.amadeus-flygo-checkbox-input:checked + .amadeus-flygo-checkbox-box svg {
	opacity: 1;
	transform: scale(1);
}

.amadeus-flygo-checkbox-input:focus-visible + .amadeus-flygo-checkbox-box {
	outline: 2px solid rgba(255, 106, 0, 0.35);
	outline-offset: 2px;
}

.amadeus-flygo-panel--filters .amadeus-flygo-filter-group > h4 {
	margin: 0 0 12px;
	font-size: 14px;
	font-weight: 700;
	color: var(--amadeus-secondary);
}

.amadeus-flygo-airline-search {
	width: 100%;
	border: 1px solid var(--amadeus-border);
	border-radius: 10px;
	padding: 9px 12px;
	font-size: 13px;
	margin-bottom: 10px;
	box-shadow: none;
}

.amadeus-flygo-airline-list {
	max-height: 180px;
	overflow-y: auto;
}

.amadeus-flygo-price-slider {
	padding: 4px 0 0;
}

.amadeus-flygo-price-track-wrap {
	position: relative;
	height: 28px;
	display: flex;
	align-items: center;
}

.amadeus-flygo-price-track {
	position: absolute;
	left: 0;
	right: 0;
	height: 4px;
	background: #e5e7eb;
	border-radius: 999px;
}

.amadeus-flygo-price-fill {
	position: absolute;
	height: 100%;
	background: var(--amadeus-primary);
	border-radius: 999px;
	left: 0;
	right: 0;
}

.amadeus-flygo-price-track-wrap input[type="range"] {
	position: absolute;
	left: 0;
	width: 100%;
	margin: 0;
	padding: 0;
	background: transparent;
	pointer-events: none;
	-webkit-appearance: none;
	appearance: none;
	height: 28px;
}

.amadeus-flygo-price-track-wrap input[type="range"]::-webkit-slider-runnable-track {
	height: 4px;
	background: transparent;
	border: 0;
}

.amadeus-flygo-price-track-wrap input[type="range"]::-moz-range-track {
	height: 4px;
	background: transparent;
	border: 0;
}

.amadeus-flygo-price-track-wrap input[type="range"]::-webkit-slider-thumb {
	-webkit-appearance: none;
	appearance: none;
	pointer-events: auto;
	width: 18px;
	height: 18px;
	border-radius: 50%;
	background: var(--amadeus-primary);
	border: 2px solid #fff;
	box-shadow: 0 1px 4px rgba(15, 23, 42, 0.18);
	cursor: pointer;
	margin-top: -7px;
}

.amadeus-flygo-price-track-wrap input[type="range"]::-moz-range-thumb {
	pointer-events: auto;
	width: 18px;
	height: 18px;
	border-radius: 50%;
	background: var(--amadeus-primary);
	border: 2px solid #fff;
	box-shadow: 0 1px 4px rgba(15, 23, 42, 0.18);
	cursor: pointer;
}

.amadeus-flygo-price-track-wrap .amadeus-filter-price-min {
	z-index: 3;
}

.amadeus-flygo-price-track-wrap .amadeus-filter-price-max {
	z-index: 4;
}

.amadeus-flygo-price-labels {
	display: flex;
	justify-content: space-between;
	align-items: center;
	font-size: 13px;
	font-weight: 700;
	color: var(--amadeus-secondary);
	margin-top: 8px;
	line-height: 1.2;
}

.amadeus-flygo-range {
	position: relative;
	padding: 8px 0 4px;
}

.amadeus-flygo-range input[type="range"] {
	width: 100%;
	accent-color: var(--amadeus-primary);
	margin: 4px 0;
}

.amadeus-flygo-range-labels {
	display: flex;
	justify-content: space-between;
	font-size: 11px;
	color: var(--amadeus-muted);
	margin-top: 4px;
}

.amadeus-flygo-results-shell {
	background: #fff;
	border: 1px solid var(--amadeus-border);
	border-radius: 14px;
	overflow: hidden;
	box-shadow: 0 8px 24px rgba(15, 23, 42, 0.04);
}

.amadeus-flygo-results-tabs {
	display: flex;
	gap: 0;
	border-bottom: 1px solid var(--amadeus-border);
	padding: 0 18px;
	background: #fafafa;
}

.amadeus-flygo-results-tab {
	border: 0;
	background: transparent;
	padding: 14px 18px;
	font-size: 14px;
	font-weight: 700;
	color: var(--amadeus-muted);
	cursor: pointer;
	border-bottom: 2px solid transparent;
	margin-bottom: -1px;
}

.amadeus-flygo-results-tab.is-active {
	color: var(--amadeus-primary);
	border-bottom-color: var(--amadeus-primary);
	background: #fff;
}

.amadeus-flygo-results-tab.is-disabled {
	opacity: 0.45;
	cursor: not-allowed;
}

.amadeus-flygo-results-head {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	gap: 16px;
	padding: 20px 22px 16px;
	border-bottom: 1px solid var(--amadeus-border);
	min-width: 0;
}

.amadeus-flygo-results-head-copy {
	flex: 1 1 auto;
	min-width: 0;
}

.amadeus-flygo-results-head h2 {
	margin: 0 0 6px;
	font-size: 22px;
	font-weight: 800;
	color: var(--amadeus-secondary);
}

.amadeus-flygo-results-head p {
	margin: 0;
	color: var(--amadeus-muted);
	font-size: 14px;
}

.amadeus-flygo-results-count {
	display: inline-block;
	margin-left: 8px;
	padding-left: 8px;
	border-left: 1px solid var(--amadeus-border);
	font-weight: 600;
	color: var(--amadeus-secondary);
}

.amadeus-flygo-results-sort {
	display: flex;
	align-items: center;
	gap: 10px;
	flex: 0 1 auto;
	min-width: 0;
	max-width: 100%;
}

.amadeus-flygo-results-sort label {
	font-size: 13px;
	font-weight: 600;
	color: var(--amadeus-muted);
	white-space: nowrap;
}

.amadeus-flygo-results-sort select {
	border: 1px solid var(--amadeus-border);
	border-radius: 10px;
	padding: 8px 36px 8px 12px;
	font-size: 14px;
	font-weight: 600;
	color: var(--amadeus-secondary);
	min-width: 0;
	max-width: 100%;
	box-sizing: border-box;
	box-shadow: none;
}

.amadeus-flygo-results-list {
	padding: 12px 16px 16px;
}

.amadeus-flygo-results-list .amadeus-flygo-offer:last-child {
	margin-bottom: 0;
}

.amadeus-flights-results .amadeus-results {
	margin-top: 0;
}

/* Override core .amadeus-offer flex layout on FlyGo cards */
.amadeus-style-flygo .amadeus-flygo-offer.amadeus-offer {
	display: block;
	transform: none;
}

.amadeus-style-flygo .amadeus-flygo-offer.amadeus-offer:hover {
	transform: none;
}

.amadeus-flygo-offer {
	position: relative;
	background: #fff;
	border: 1px solid var(--amadeus-border);
	border-radius: 12px;
	padding: 16px 20px;
	margin-bottom: 12px;
	transition: box-shadow 0.2s ease, border-color 0.2s ease;
}

.amadeus-flygo-offer--badged {
	padding-top: 22px;
}

.amadeus-flygo-offer:hover {
	border-color: #d1d5db;
	box-shadow: 0 4px 16px rgba(15, 23, 42, 0.06);
}

.amadeus-flygo-offer-badge {
	position: absolute;
	top: 0;
	left: 20px;
	transform: translateY(-50%);
	background: var(--amadeus-primary);
	color: #fff;
	font-size: 11px;
	font-weight: 700;
	padding: 4px 10px;
	border-radius: 999px;
	line-height: 1.2;
	z-index: 1;
}

.amadeus-flygo-offer-body {
	display: grid;
	grid-template-columns: 140px minmax(0, 1fr) 168px;
	grid-template-areas: "airline route price";
	gap: 0 20px;
	align-items: center;
	width: 100%;
}

.amadeus-flygo-offer-airline {
	grid-area: airline;
	display: flex;
	align-items: center;
	gap: 10px;
	min-width: 0;
}

.amadeus-flygo-offer-center {
	grid-area: route;
	display: flex;
	flex-direction: column;
	gap: 8px;
	min-width: 0;
}

.amadeus-flygo-offer-price {
	grid-area: price;
	text-align: right;
	align-self: center;
	min-width: 0;
}

.amadeus-flygo-airline-logo {
	width: 44px;
	height: 44px;
	border-radius: 10px;
	background: #fff7ed;
	color: var(--amadeus-primary);
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: 800;
	font-size: 13px;
	flex-shrink: 0;
	border: 1px solid #ffedd5;
}

.amadeus-flygo-offer-airline strong {
	display: block;
	font-size: 14px;
	font-weight: 700;
	color: var(--amadeus-secondary);
}

.amadeus-offer-meta {
	font-size: 12px;
	color: var(--amadeus-muted);
	margin-top: 2px;
}

.amadeus-flygo-offer-route {
	display: grid;
	grid-template-columns: 72px minmax(60px, 1fr) 72px;
	gap: 8px;
	align-items: center;
	width: 100%;
}

.amadeus-flygo-time strong {
	display: block;
	font-size: 20px;
	font-weight: 800;
	color: var(--amadeus-secondary);
	line-height: 1.1;
}

.amadeus-flygo-airport {
	display: block;
	font-size: 13px;
	font-weight: 700;
	color: var(--amadeus-secondary);
	margin-top: 2px;
}

.amadeus-flygo-city {
	display: block;
	font-size: 12px;
	color: var(--amadeus-muted);
}

.amadeus-flygo-time--arr {
	text-align: right;
}

.amadeus-flygo-line {
	text-align: center;
}

.amadeus-flygo-duration,
.amadeus-flygo-stops {
	display: block;
	font-size: 12px;
	color: var(--amadeus-muted);
	line-height: 1.3;
}

.amadeus-flygo-line-track {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 6px 0;
}

.amadeus-flygo-line-bar {
	flex: 1;
	height: 2px;
	background: linear-gradient(90deg, #d1d5db, var(--amadeus-primary), #d1d5db);
	border-radius: 999px;
}

.amadeus-flygo-plane-icon {
	position: absolute;
	color: var(--amadeus-primary);
	background: #fff;
	padding: 0 4px;
}

.amadeus-flygo-offer-baggage {
	display: flex;
	gap: 14px;
	padding-left: 2px;
}

.amadeus-flygo-baggage-item {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	font-size: 11px;
	font-weight: 600;
	color: var(--amadeus-muted);
}

.amadeus-flygo-baggage-item svg {
	flex-shrink: 0;
}

.amadeus-flygo-offer-amenities {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 6px;
	margin: 8px 0 0;
	padding: 0;
	list-style: none;
}

.amadeus-flygo-amenity-item {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 28px;
	height: 28px;
	border-radius: 6px;
	color: var(--amadeus-muted);
	cursor: help;
	transition: background-color 0.15s ease, color 0.15s ease;
}

.amadeus-flygo-amenity-item:hover,
.amadeus-flygo-amenity-item:focus-visible {
	background: rgba(0, 0, 0, 0.05);
	outline: none;
}

.amadeus-flygo-amenity-item svg {
	flex-shrink: 0;
	color: var(--amadeus-primary);
}

.amadeus-flygo-amenity-item::after {
	content: attr(data-tooltip);
	position: absolute;
	bottom: calc(100% + 8px);
	left: 50%;
	z-index: 20;
	width: max-content;
	max-width: 220px;
	padding: 6px 10px;
	border-radius: 6px;
	background: #1e293b;
	color: #fff;
	font-size: 11px;
	font-weight: 600;
	line-height: 1.3;
	text-align: center;
	white-space: normal;
	pointer-events: none;
	opacity: 0;
	visibility: hidden;
	transform: translateX(-50%) translateY(4px);
	transition: opacity 0.15s ease, transform 0.15s ease, visibility 0.15s ease;
}

.amadeus-flygo-amenity-item::before {
	content: '';
	position: absolute;
	bottom: calc(100% + 2px);
	left: 50%;
	z-index: 21;
	border: 5px solid transparent;
	border-top-color: #1e293b;
	pointer-events: none;
	opacity: 0;
	visibility: hidden;
	transform: translateX(-50%);
	transition: opacity 0.15s ease, visibility 0.15s ease;
}

.amadeus-flygo-amenity-item:hover::after,
.amadeus-flygo-amenity-item:hover::before,
.amadeus-flygo-amenity-item:focus-visible::after,
.amadeus-flygo-amenity-item:focus-visible::before {
	opacity: 1;
	visibility: visible;
}

.amadeus-flygo-amenity-item:hover::after,
.amadeus-flygo-amenity-item:focus-visible::after {
	transform: translateX(-50%) translateY(0);
}

.amadeus-flygo-amenity-item--chargeable svg {
	color: var(--amadeus-muted);
}

.amadeus-flygo-offer-price .amadeus-price {
	font-size: 26px;
	font-weight: 800;
	color: var(--amadeus-primary);
	line-height: 1.1;
}

.amadeus-flygo-per-person {
	display: block;
	font-size: 11px;
	color: var(--amadeus-muted);
	margin: 2px 0 8px;
}

.amadeus-flygo-offer-price-left {
	min-width: 0;
}

.amadeus-flygo-offer-actions {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 8px;
}

.amadeus-flygo-offer-price .amadeus-btn {
	border-radius: 10px;
	padding: 10px 22px;
	font-weight: 700;
	min-width: 100px;
	background: var(--amadeus-primary) !important;
}

.amadeus-flygo-offer-toggle {
	width: 38px;
	height: 38px;
	border: 1px solid var(--amadeus-border);
	border-radius: 10px;
	background: #fff;
	color: var(--amadeus-muted);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	padding: 0;
	transition: border-color 0.2s ease, color 0.2s ease;
}

.amadeus-flygo-offer-toggle:hover {
	border-color: var(--amadeus-primary);
	color: var(--amadeus-primary);
}

.amadeus-flygo-offer.is-expanded .amadeus-flygo-offer-toggle svg {
	transform: rotate(180deg);
}

.amadeus-flygo-offer-details {
	margin-top: 14px;
	padding-top: 14px;
	border-top: 1px dashed var(--amadeus-border);
}

.amadeus-flygo-offer-details .amadeus-flygo-flight-details-fare {
	margin-top: 12px;
	padding-top: 12px;
	border-top: 1px solid var(--amadeus-border);
}

.amadeus-flygo-trust-bar {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 16px;
	margin-top: 24px;
	padding: 18px 22px;
	background: #fff;
	border: 1px solid var(--amadeus-border);
	border-radius: 14px;
}

.amadeus-flygo-trust-item {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	font-size: 13px;
	font-weight: 600;
	color: var(--amadeus-secondary);
}

.amadeus-flygo-trust-item svg {
	color: var(--amadeus-primary);
	flex-shrink: 0;
}

@media (max-width: 1100px) {
	.amadeus-flygo-bar {
		flex-wrap: wrap;
		overflow: visible;
	}

	.amadeus-flygo-route {
		flex: 1 1 100%;
		border-bottom: 1px solid var(--flygo-divider);
	}

	.amadeus-flygo-field {
		flex: 1 1 calc(50% - 1px);
		border-bottom: 1px solid var(--flygo-divider);
	}

	.amadeus-flygo-divider {
		display: none;
	}

	.amadeus-flygo-swap {
		margin: 0 -6px;
	}

	.amadeus-style-flygo .amadeus-flygo-form .amadeus-flygo-submit {
		flex: 1 1 100%;
		margin: 0;
		border-radius: 0 0 calc(var(--flygo-bar-radius) - 1px) calc(var(--flygo-bar-radius) - 1px);
		min-height: 56px;
	}

	.amadeus-flygo-advanced {
		margin-left: 0;
	}
}

@media (max-width: 900px) {
	.amadeus-flygo-layout {
		grid-template-columns: 1fr;
	}

	.amadeus-flygo-offer-body {
		grid-template-columns: 1fr;
		grid-template-areas:
			"airline"
			"route"
			"price";
		gap: 14px;
	}

	.amadeus-flygo-offer-baggage {
		padding-left: 0;
	}

	.amadeus-flygo-offer-price {
		text-align: left;
	}

	.amadeus-flygo-offer-actions {
		justify-content: flex-start;
	}

	.amadeus-flygo-trust-bar {
		grid-template-columns: repeat(2, 1fr);
	}

	.amadeus-flygo-summary-bar {
		flex-direction: column;
		align-items: stretch;
	}

	.amadeus-flygo-summary-cta {
		flex-direction: row;
		flex-wrap: wrap;
		min-width: 0;
	}

	.amadeus-flygo-advanced-grid {
		grid-template-columns: repeat(auto-fit, minmax(min(100%, 150px), 1fr));
	}

	.amadeus-flygo-advanced-grid .amadeus-autocomplete-wrap {
		min-width: 0;
	}

	.amadeus-flygo-modify-btn {
		width: 100%;
		text-align: center;
	}

	.amadeus-flygo-results-head {
		flex-direction: column;
	}

	.amadeus-flygo-results-sort {
		width: 100%;
	}

	.amadeus-flygo-results-sort select {
		flex: 1;
	}

	.amadeus-flygo-time-slots {
		grid-template-columns: 1fr;
	}

	/* Activate the filter drawer + dock from 900px down (no tablet gap) */
	.amadeus-flygo-sidebar {
		position: fixed;
		left: 0;
		right: 0;
		bottom: 0;
		z-index: 1001;
		max-height: min(82vh, 720px);
		overflow-y: auto;
		transform: translateY(110%);
		transition: transform 0.28s ease;
		border-radius: 18px 18px 0 0;
		box-shadow: 0 -12px 40px rgba(15, 23, 42, 0.18);
		padding-bottom: env(safe-area-inset-bottom, 0px);
	}

	.amadeus-flygo-sidebar.is-open {
		transform: translateY(0);
	}

	.amadeus-flygo-filters-close,
	.amadeus-flygo-mobile-dock {
		display: flex;
	}

	.amadeus-flygo-filter-backdrop {
		display: block;
		position: fixed;
		inset: 0;
		z-index: 1000;
		border: 0;
		padding: 0;
		background: rgba(15, 23, 42, 0.45);
		opacity: 0;
		pointer-events: none;
		transition: opacity 0.24s ease;
	}

	.amadeus-flygo-filter-backdrop.is-open {
		opacity: 1;
		pointer-events: auto;
	}

	.amadeus-flygo-mobile-dock {
		position: fixed;
		left: 0;
		right: 0;
		bottom: 0;
		z-index: 900;
		gap: 8px;
		padding: 10px 12px calc(10px + env(safe-area-inset-bottom, 0px));
		background: rgba(255, 255, 255, 0.96);
		border-top: 1px solid var(--amadeus-border);
		box-shadow: 0 -8px 28px rgba(15, 23, 42, 0.08);
		backdrop-filter: blur(8px);
	}

	.amadeus-flygo-dock-btn {
		flex: 1;
		display: inline-flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		gap: 3px;
		min-height: 52px;
		padding: 7px 8px;
		border: 1px solid var(--amadeus-border);
		border-radius: 12px;
		background: #fff;
		color: var(--amadeus-secondary);
		font-size: 11px;
		font-weight: 700;
		cursor: pointer;
	}

	.amadeus-flygo-dock-btn svg {
		color: var(--amadeus-primary);
	}

	body.amadeus-filters-open {
		overflow: hidden;
	}
}

@media (max-width: 640px) {
	.amadeus-flygo-field {
		flex: 1 1 100%;
	}

	.amadeus-flygo-head {
		flex-direction: column;
		align-items: flex-start;
	}

	.amadeus-flygo-miles {
		margin-left: 0;
	}

	.amadeus-flygo-summary {
		flex-direction: column;
		align-items: flex-start;
	}

	.amadeus-flygo-trust-bar {
		grid-template-columns: 1fr;
	}
	.amadeus-flygo-diet{
		flex: 1 1 auto;
	}
	#amadeus-flight-checkout .amadeus-flygo-checkout-total-label {
		font-size: 12px;
		white-space: nowrap;
	}
	#amadeus-flight-checkout .amadeus-flygo-checkout-total-amount{
		font-size: 12px !important;
	}
	.amadeus-flygo-flight-summary-route{
		flex: 1 1 50px;
	}
	.amadeus-flygo-flight-summary-meta{
		flex: 1 1 150px;
	}
	.amadeus-flygo-flight-details-toggle{
		margin-left: 0;
		width: 100%;
	}
	.amadeus-flygo-results-head-copy {
		flex: 1 1 auto;
		min-width: 0;
	}

	.amadeus-flygo-results-sort {
		flex: 0 1 auto !important;
		min-width: 0;
		max-width: min(48%, 160px);
	}
}

/* Checkout / Extras screen */
.amadeus-flygo-checkout {
	/* max-width: 920px; */
	margin: 0 auto;
	padding-bottom: 120px;
}

.amadeus-flygo-checkout-card,
.amadeus-flygo-section {
	background: #fff;
	border: 1px solid var(--amadeus-border);
	border-radius: 18px;
	padding: 20px;
	margin-bottom: 18px;
	box-shadow: 0 8px 24px rgba(15, 23, 42, 0.05);
}

.amadeus-flygo-flight-card-wrap {
	position: relative;
	z-index: 25;
	overflow: visible;
}

.amadeus-flygo-flight-card-wrap.is-flight-details-open {
	z-index: 40;
}

.amadeus-flygo-flight-summary {
	display: flex;
	align-items: center;
	gap: 20px;
	flex-wrap: wrap;
}

.amadeus-flygo-flight-summary-main {
	display: flex;
	align-items: flex-start;
	gap: 14px;
	flex: 1 1 240px;
	min-width: 0;
}

.amadeus-flygo-flight-summary-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	border-radius: 12px;
	background: rgba(255, 106, 0, 0.12);
	color: var(--amadeus-primary);
	flex-shrink: 0;
}

.amadeus-flygo-flight-summary-route strong {
	display: block;
	font-size: 20px;
	line-height: 1.3;
	margin-bottom: 4px;
	color: var(--amadeus-secondary);
}

.amadeus-flygo-flight-summary-route span {
	display: block;
	font-size: 14px;
	color: var(--amadeus-muted);
}

.amadeus-flygo-flight-summary-meta {
	display: flex;
	align-items: center;
	gap: 18px;
	flex-wrap: wrap;
	flex: 1 1 280px;
	place-content: end;
}

.amadeus-flygo-flight-summary-airline {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	font-size: 14px;
	color: var(--amadeus-muted);
}

.amadeus-flygo-flight-summary-airline .amadeus-flygo-airline-logo {
	width: 28px;
	height: 28px;
	font-size: 11px;
}

.amadeus-flygo-flight-summary-airline-name {
	font-weight: 600;
	color: var(--amadeus-secondary);
}

.amadeus-flygo-flight-summary-stat {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	font-size: 14px;
	color: var(--amadeus-muted);
	white-space: nowrap;
}

.amadeus-flygo-flight-summary-stat svg {
	flex-shrink: 0;
	color: var(--amadeus-muted);
}

.amadeus-flygo-flight-details-toggle {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	margin-left: auto;
	background: var(--amadeus-primary);
	color: #fff;
	border: 0;
	border-radius: 10px;
	padding: 11px 20px;
	font-size: 14px;
	font-weight: 700;
	line-height: 1.2;
	min-height: 44px;
	white-space: nowrap;
	cursor: pointer;
	box-shadow: 0 4px 16px rgba(255, 106, 0, 0.28);
	transition: filter 0.15s ease, transform 0.1s ease;
}

.amadeus-flygo-flight-details-toggle:hover {
	filter: brightness(0.96);
	color: #fff;
}

.amadeus-flygo-flight-details-toggle:active {
	transform: translateY(1px);
}

.amadeus-flygo-flight-details-chevron {
	display: inline-flex;
	align-items: center;
	transition: transform 0.2s ease;
}

.amadeus-flygo-flight-details-toggle.is-open .amadeus-flygo-flight-details-chevron {
	transform: rotate(90deg);
}

.amadeus-flygo-flight-details-panel {
	display: block;
	margin-top: 16px;
	padding-top: 16px;
	border-top: 1px solid var(--amadeus-border);
}

.amadeus-flygo-flight-details-panel[hidden] {
	display: none !important;
}

.amadeus-flygo-flight-timeline {
	position: relative;
	padding-left: 28px;
}

.amadeus-flygo-flight-timeline::before {
	content: '';
	position: absolute;
	left: 11px;
	top: 12px;
	bottom: 12px;
	border-left: 2px dashed #d1d5db;
}

.amadeus-flygo-flight-timeline-item {
	position: relative;
	display: flex;
	gap: 14px;
	padding: 8px 0 12px;
}

.amadeus-flygo-flight-timeline-marker {
	position: absolute;
	left: -28px;
	top: 10px;
	width: 24px;
	height: 24px;
	border-radius: 50%;
	background: #ede9fe;
	color: #7c3aed;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	z-index: 1;
}

.amadeus-flygo-flight-timeline-marker svg {
	width: 13px;
	height: 13px;
}

.amadeus-flygo-flight-timeline-content {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	gap: 16px;
	flex: 1;
	flex-wrap: wrap;
}

.amadeus-flygo-flight-timeline-main {
	display: grid;
	gap: 4px;
	min-width: 0;
}

.amadeus-flygo-flight-timeline-flight {
	font-size: 15px;
	color: var(--amadeus-secondary);
}

.amadeus-flygo-flight-timeline-route {
	font-size: 14px;
	font-weight: 600;
	color: var(--amadeus-secondary);
}

.amadeus-flygo-flight-timeline-time,
.amadeus-flygo-flight-timeline-duration {
	font-size: 13px;
	color: var(--amadeus-muted);
}

.amadeus-flygo-flight-timeline-side {
	display: grid;
	gap: 6px;
	justify-items: end;
	text-align: right;
	font-size: 13px;
	color: var(--amadeus-muted);
}

.amadeus-flygo-flight-timeline-airline {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	font-weight: 600;
	color: var(--amadeus-secondary);
}

.amadeus-flygo-flight-timeline-airline .amadeus-flygo-airline-logo {
	width: 24px;
	height: 24px;
	font-size: 10px;
}

.amadeus-flygo-flight-timeline-cabin {
	display: inline-block;
	padding: 3px 10px;
	border-radius: 999px;
	background: #ede9fe;
	color: #6d28d9;
	font-size: 12px;
	font-weight: 700;
}

.amadeus-flygo-flight-timeline-layover {
	display: flex;
	align-items: center;
	gap: 10px;
	margin: 4px 0 8px -28px;
	padding: 10px 14px 10px 36px;
	background: rgba(255, 106, 0, 0.1);
	border-radius: 10px;
	position: relative;
}

.amadeus-flygo-flight-timeline-layover-icon {
	position: absolute;
	left: 8px;
	top: 50%;
	transform: translateY(-50%);
	width: 22px;
	height: 22px;
	border-radius: 50%;
	background: #fff;
	color: var(--amadeus-primary);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	box-shadow: 0 0 0 2px rgba(255, 106, 0, 0.15);
}

.amadeus-flygo-flight-timeline-layover-text {
	flex: 1;
	font-size: 14px;
	font-weight: 700;
	color: var(--amadeus-primary);
}

.amadeus-flygo-flight-timeline-layover-duration {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	font-size: 13px;
	font-weight: 600;
	color: var(--amadeus-primary);
}

.amadeus-flygo-flight-details-fare {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 12px 20px;
	margin-top: 14px;
	padding: 12px 16px;
	border-radius: 12px;
	background: #ecfdf5;
	border: 1px solid #bbf7d0;
	font-size: 13px;
	font-weight: 600;
	color: #047857;
}

.amadeus-flygo-fare-brand,
.amadeus-flygo-fare-bag {
	display: inline-flex;
	align-items: center;
	gap: 8px;
}

.amadeus-flygo-fare-brand {
	font-weight: 800;
	letter-spacing: 0.02em;
}

.amadeus-flygo-flight-card {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 16px;
	flex-wrap: wrap;
}

.amadeus-flygo-flight-card-route strong {
	display: block;
	font-size: 20px;
	margin-bottom: 4px;
}

.amadeus-flygo-flight-card-route span,
.amadeus-flygo-flight-card-meta span {
	color: var(--amadeus-muted);
	font-size: 14px;
}

.amadeus-flygo-flight-card-meta {
	display: flex;
	align-items: center;
	gap: 12px;
	flex-wrap: wrap;
}

.amadeus-flygo-section-head {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	gap: 12px;
	margin-bottom: 16px;
}

.amadeus-flygo-section-head h2,
.amadeus-flygo-section > h2 {
	margin: 0 0 6px;
	font-size: 22px;
}

.amadeus-flygo-section-head p,
.amadeus-flygo-section-desc {
	margin: 0;
	color: var(--amadeus-muted);
}

.amadeus-flygo-link-btn {
	border: 0;
	background: transparent;
	color: var(--amadeus-primary);
	font-weight: 700;
	cursor: pointer;
	padding: 0;
	pointer-events: auto;
}

.amadeus-flygo-diet-tabs {
	display: flex;
	gap: 10px;
	flex-wrap: wrap;
	margin-bottom: 16px;
}

.amadeus-flygo-diet {
	border: 1px solid var(--amadeus-border);
	background: #fff;
	border-radius: 999px;
	padding: 8px 14px;
	font-weight: 600;
	cursor: pointer;
}

.amadeus-flygo-diet.is-active {
	border-color: var(--amadeus-primary);
	color: var(--amadeus-primary);
	background: #fff7ed;
}

.amadeus-flygo-meals,
.amadeus-flygo-services {
	display: grid;
	gap: 14px;
}

.amadeus-flygo-meal,
.amadeus-flygo-service {
	display: grid;
	grid-template-columns: 72px 1fr;
	gap: 14px;
	align-items: center;
	border: 1px solid var(--amadeus-border);
	border-radius: 16px;
	padding: 14px;
}

.amadeus-flygo-service {
	grid-template-columns: 52px 1fr auto;
}

.amadeus-flygo-meal-thumb,
.amadeus-flygo-service-icon {
	width: 64px;
	height: 64px;
	border-radius: 14px;
	background: #fff7ed;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 28px;
}

.amadeus-flygo-service-icon {
	width: 48px;
	height: 48px;
	font-size: 22px;
}

.amadeus-flygo-meal-title {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-bottom: 4px;
}

.amadeus-flygo-meal-body p,
.amadeus-flygo-service-body span {
	display: block;
	margin: 0;
	color: var(--amadeus-muted);
	font-size: 14px;
}

.amadeus-flygo-badge {
	background: #ecfdf3;
	color: #027a48;
	font-size: 11px;
	font-weight: 700;
	padding: 3px 8px;
	border-radius: 999px;
}

.amadeus-flygo-meal-foot,
.amadeus-flygo-service-side {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	margin-top: 10px;
}

.amadeus-flygo-service-side {
	flex-direction: column;
	align-items: flex-end;
	margin-top: 0;
}

.amadeus-flygo-meal-price {
	font-weight: 800;
	color: var(--amadeus-secondary);
}

.amadeus-flygo-qty {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	background: #f3f4f6;
	border-radius: 999px;
	padding: 4px 8px;
}

.amadeus-flygo-qty button {
	border: 0;
	border-radius: 50%;
	background: #fff;
	color: var(--amadeus-primary);
	font-size: 18px;
	cursor: pointer;
}

.amadeus-flygo-add-btn {
	border: 0;
	border-radius: 50%;
	background: var(--amadeus-primary);
	color: #fff;
	font-size: 20px;
	cursor: pointer;
	width: 32px;
    height: 32px;
	padding: 0;
}

.amadeus-flygo-service.is-selected {
	border-color: var(--amadeus-primary);
	background: #fffaf5;
}

.amadeus-flygo-fare-panel {
	background: #fff;
	border: 1px solid var(--amadeus-border);
	border-radius: 16px;
	padding: 16px 18px;
	margin-bottom: 18px;
}

.amadeus-flygo-fare-panel--sidebar {
	margin-bottom: 0;
}

.amadeus-flygo-fare-panel--sidebar h3 {
	margin: 0 0 8px;
	font-size: 18px;
}

.amadeus-flygo-checkout-sidebar--sticky {
	position: sticky;
	top: 12px;
	z-index: 2;
	display: flex;
	flex-direction: column;
	gap: 12px;
	align-self: start;
	width: 100%;
}

.amadeus-flygo-fare-lines div {
	display: flex;
	justify-content: space-between;
	padding: 8px 0;
	border-bottom: 1px solid #f3f4f6;
}

.amadeus-flygo-checkout-bar {
	position: sticky;
	bottom: 0;
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 16px;
	background: #fff;
	border: 1px solid var(--amadeus-border);
	border-radius: 18px;
	padding: 16px 20px;
	box-shadow: 0 -8px 30px rgba(15, 23, 42, 0.08);
}

.amadeus-flygo-checkout-total span {
	display: block;
	font-size: 13px;
	color: var(--amadeus-muted);
}

.amadeus-flygo-checkout-total strong {
	display: block;
	font-size: 28px;
	color: var(--amadeus-secondary);
}

.amadeus-flygo-passenger-form .amadeus-grid {
	margin-top: 16px;
}

@media (max-width: 768px) {
	.amadeus-flygo-checkout-bar {
		flex-direction: column;
		align-items: stretch;
	}

	.amadeus-flygo-meal {
		grid-template-columns: 1fr 4fr;
		align-items: start;
	}

	/* .amadeus-flygo-service {
		grid-template-columns: 1fr;
	} */

	.amadeus-flygo-meal-thumb,
	.amadeus-flygo-service-icon {
		width: 56px;
		height: 56px;
	}
}

/* Unified checkout layout */
.amadeus-flygo-checkout.amadeus-flygo-checkout--unified {
	/* max-width: 1280px;
	width: 100%; */
	margin: 0 auto;
	padding-bottom: var(--flygo-checkout-footer);
	display: flex;
	flex-direction: column;
	gap: 12px;
	--flygo-checkout-footer: 72px;
}

.amadeus-flygo-checkout.amadeus-flygo-checkout--unified::after {
	content: none;
}

.amadeus-flygo-checkout.amadeus-flygo-checkout--unified .amadeus-flygo-checkout-card,
.amadeus-flygo-checkout.amadeus-flygo-checkout--unified .amadeus-flygo-section,
.amadeus-flygo-checkout.amadeus-flygo-checkout--unified .amadeus-flygo-fare-panel {
	margin-bottom: 0;
}

.amadeus-flygo-checkout-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 12px;
	align-items: stretch;
}

.amadeus-flygo-checkout-grid--single {
	grid-template-columns: minmax(0, 1fr);
}

.amadeus-flygo-checkout-col {
	display: flex;
	flex-direction: column;
	gap: 12px;
	min-width: 0;
}

.amadeus-flygo-checkout-col--passengers > .amadeus-flygo-section {
	flex: 1;
}

.amadeus-flygo-passenger-panel {
	border: 1px solid var(--amadeus-border);
	border-radius: 14px;
	margin-bottom: 10px;
	background: #fafafa;
}

.amadeus-flygo-passenger-panel summary {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 14px 16px;
	font-weight: 700;
	cursor: pointer;
	list-style: none;
}

.amadeus-flygo-passenger-panel summary::-webkit-details-marker {
	display: none;
}

.amadeus-flygo-passenger-num {
	width: 28px;
	height: 28px;
	border-radius: 50%;
	background: var(--amadeus-primary);
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 13px;
}

.amadeus-flygo-passenger-fields {
	padding: 0 16px 16px;
}

.amadeus-flygo-passenger-grid {
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 12px;
}

.amadeus-flygo-checkout.amadeus-flygo-checkout--unified .amadeus-flygo-section-head {
	margin-bottom: 12px;
}

.amadeus-flygo-checkout.amadeus-flygo-checkout--unified .amadeus-flygo-checkout-card,
.amadeus-flygo-checkout.amadeus-flygo-checkout--unified .amadeus-flygo-section {
	padding: 16px 18px;
}

.amadeus-flygo-gender-options {
	display: flex;
	gap: 16px;
	padding-top: 8px;
}

.amadeus-flygo-gender-options label {
	display: flex;
	align-items: center;
	gap: 6px;
	font-weight: 500;
}

.amadeus-flygo-seat-trigger-card,
.amadeus-flygo-insurance-card {
	display: flex;
	align-items: center;
	gap: 14px;
	border: 1px solid var(--amadeus-border);
	border-radius: 14px;
	padding: 16px;
	margin-top: 14px;
	background: #fff;
	cursor: pointer;
	transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.amadeus-flygo-insurance-card.is-selected {
	border-color: var(--amadeus-primary);
	box-shadow: 0 0 0 1px var(--amadeus-primary);
}

.amadeus-flygo-insurance-body {
	flex: 1 1 auto;
	min-width: 0;
}

.amadeus-flygo-seat-trigger-card p,
.amadeus-flygo-insurance-card p {
	margin: 4px 0 0;
	font-size: 13px;
	color: var(--amadeus-muted);
}

.amadeus-flygo-seat-open-btn {
	display: flex;
	align-items: center;
	gap: 8px;
	white-space: nowrap;
}

.amadeus-flygo-insurance-icon {
	font-size: 28px;
	flex-shrink: 0;
}

.amadeus-flygo-insurance-price {
	display: block;
	margin-top: 6px;
	font-size: 13px;
	font-weight: 700;
	color: var(--amadeus-primary);
}

.amadeus-flygo-checkout-bar--fixed {
	position: fixed;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 900;
	max-width: none;
	width: 100%;
	border-radius: 0;
	border: 0;
	border-top: 1px solid #e5e7eb;
	padding: 0;
	margin: 0;
	background: #fff;
	box-shadow: 0 -2px 20px rgba(15, 23, 42, 0.06);
	pointer-events: none;
}

.amadeus-flygo-checkout-bar--fixed .amadeus-flygo-checkout-bar-inner {
	pointer-events: auto;
}

.amadeus-flygo-checkout-bar-inner {
	max-width: 1280px;
	width: 100%;
	margin: 0 auto;
	padding: 12px 40px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	box-sizing: border-box;
	min-height: 56px;
}

.amadeus-flygo-back-link {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: #6b7280;
	font-weight: 600;
	font-size: 15px;
	text-decoration: none;
	white-space: nowrap;
	line-height: 1.4;
	transition: color 0.15s ease;
}

.amadeus-flygo-back-arrow {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	color: #9ca3af;
	line-height: 0;
}

.amadeus-flygo-checkout-fare-link {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	border: 0;
	background: transparent;
	color: #ff6a00;
	font-weight: 700;
	font-size: 14px;
	padding: 0;
	margin: 0;
	cursor: pointer;
	line-height: 1.3;
	text-decoration: none;
	white-space: nowrap;
}

.amadeus-flygo-fare-chevron {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	line-height: 0;
	transition: transform 0.2s ease;
}

.amadeus-flygo-checkout-fare-link[aria-expanded="true"] .amadeus-flygo-fare-chevron {
	transform: rotate(180deg);
}

.amadeus-flygo-checkout-bar-left {
	justify-self: start;
}

.amadeus-flygo-checkout-bar-center {
	justify-self: center;
	text-align: center;
}

.amadeus-flygo-checkout-bar-right {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 24px;
	margin-left: auto;
	flex-shrink: 0;
}

.amadeus-flygo-back-link:hover {
	color: #374151;
	text-decoration: none;
}

.amadeus-flygo-checkout-total {
	display: flex;
	flex-direction: row;
	align-items: center;
	gap: 24px;
}

.amadeus-flygo-checkout-total-main {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 0;
}

.amadeus-flygo-checkout-total-side {
	display: flex;
	align-items: center;
	padding-left: 24px;
	border-left: 1px solid #e5e7eb;
}

.amadeus-flygo-checkout-total-label {
	display: block;
	font-size: 12px;
	font-weight: 500;
	color: #9ca3af;
	line-height: 1.2;
}

.amadeus-flygo-checkout-total-amount {
	display: block;
	font-size: 26px;
	font-weight: 800;
	color: #111827;
	line-height: 1.1;
	margin: 1px 0 0;
}

.amadeus-flygo-checkout-fare-link:hover {
	color: #e55f00;
	text-decoration: underline;
}

.amadeus-flygo-checkout-cta {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	background: #ff6a00;
	color: #fff;
	border: 0;
	border-radius: 10px;
	padding: 11px 28px;
	font-size: 15px;
	font-weight: 700;
	line-height: 1.2;
	min-height: 44px;
	white-space: nowrap;
	cursor: pointer;
	box-shadow: 0 4px 16px rgba(255, 106, 0, 0.32);
	transition: filter 0.15s ease, transform 0.1s ease;
}

.amadeus-flygo-checkout-cta svg {
	flex-shrink: 0;
}

.amadeus-flygo-checkout-cta:hover {
	filter: brightness(0.96);
	color: #fff;
}

.amadeus-flygo-checkout-cta:active {
	transform: translateY(1px);
}

body.amadeus-seat-drawer-open {
	overflow: hidden;
}

/* Seat map slide drawer — 70% width, full height, fixed right */
.amadeus-flygo-seat-backdrop {
	position: fixed;
	inset: 0;
	background: rgba(15, 23, 42, 0.5);
	z-index: 10000;
	opacity: 0;
	visibility: hidden;
	transition: opacity 0.3s ease, visibility 0.3s ease;
}

.amadeus-flygo-seat-backdrop.is-open {
	opacity: 1;
	visibility: visible;
}

.amadeus-flygo-seat-drawer {
	position: fixed;
	top: 0;
	right: 0;
	width: 70%;
	height: 100vh;
	max-width: 100%;
	background: #fff;
	z-index: 10001;
	transform: translateX(100%);
	transition: transform 0.35s cubic-bezier(0.4, 0, 0.2, 1);
	box-shadow: -12px 0 40px rgba(15, 23, 42, 0.15);
	overflow: hidden;
}

.amadeus-flygo-seat-drawer[hidden] {
	display: none !important;
}

.amadeus-flygo-seat-drawer.is-open {
	transform: translateX(0);
}

.amadeus-flygo-seat-drawer-inner {
	display: flex;
	flex-direction: column;
	height: 100%;
}

.amadeus-flygo-seat-drawer-head {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 16px;
	padding: 20px 24px;
	border-bottom: 1px solid var(--amadeus-border);
	flex-shrink: 0;
}

.amadeus-flygo-seat-drawer-title {
	display: flex;
	align-items: center;
	gap: 10px;
}

.amadeus-flygo-seat-drawer-title h2 {
	margin: 0;
	font-size: 22px;
}

.amadeus-flygo-seat-icon {
	font-size: 24px;
}

.amadeus-flygo-seat-drawer-actions {
	display: flex;
	align-items: center;
	gap: 12px;
}

.amadeus-flygo-seat-close {
	border: 0;
	background: #f3f4f6;
	width: 36px;
	height: 36px;
	border-radius: 50%;
	font-size: 22px;
	line-height: 1;
	cursor: pointer;
	color: var(--amadeus-secondary);
	padding: 0;
}

.amadeus-flygo-selected-seats-hint {
	margin: -4px 0 12px;
	font-size: 12px;
	line-height: 1.45;
	color: #6b7280;
}

.amadeus-flygo-selected-seats-list {
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.amadeus-flygo-selected-seat-row {
	border: 1.5px solid #e5e7eb;
	border-radius: 12px;
	padding: 10px 12px;
	background: #fff;
	cursor: pointer;
	transition: border-color 0.15s ease, background 0.15s ease, box-shadow 0.15s ease;
}

.amadeus-flygo-selected-seat-row.is-active {
	border-color: var(--amadeus-primary, #ff6a00);
	background: #fff7ed;
	box-shadow: 0 0 0 1px rgba(255, 106, 0, 0.12);
}

.amadeus-flygo-selected-seat-row.has-seat:not(.is-active) {
	border-color: #bbf7d0;
	background: #f0fdf4;
}

.amadeus-flygo-selected-seat-row .amadeus-flygo-selected-seat-display {
	display: flex;
	align-items: center;
	gap: 12px;
}

.amadeus-flygo-selected-seat-row .amadeus-flygo-selected-seat-meta {
	flex: 1;
	min-width: 0;
}

.amadeus-flygo-seat-clear-btn {
	flex-shrink: 0;
	width: 28px;
	height: 28px;
	border: 1.5px solid #e5e7eb;
	border-radius: 8px;
	background: #fff;
	color: #6b7280;
	font-size: 18px;
	font-weight: 700;
	line-height: 1;
	cursor: pointer;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0;
	transition: border-color 0.15s ease, color 0.15s ease, background 0.15s ease;
}

.amadeus-flygo-seat-clear-btn:hover {
	border-color: #ef4444;
	color: #ef4444;
	background: #fef2f2;
}

.amadeus-flygo-seat-clear-btn[hidden] {
	display: none;
}

.amadeus-flygo-selected-seat-row + .amadeus-flygo-selected-seat-row {
	padding-top: 0;
	border-top: none;
}

.amadeus-flygo-seat-child-note {
	margin: 12px 0 0;
	font-size: 12px;
	line-height: 1.45;
	color: #6b7280;
}

.amadeus-flygo-seat-legend {
	display: flex;
	flex-wrap: wrap;
	gap: 16px;
	padding: 12px 24px;
	border-bottom: 1px solid #f3f4f6;
	font-size: 13px;
	color: var(--amadeus-muted);
	flex-shrink: 0;
}

.amadeus-flygo-seat-legend span {
	display: flex;
	align-items: center;
	gap: 6px;
}

.amadeus-seat-dot {
	width: 16px;
	height: 16px;
	border-radius: 4px;
	display: inline-block;
}

.amadeus-seat-dot.is-available {
	background: #22c55e;
}

.amadeus-seat-dot.is-selected {
	background: var(--amadeus-primary);
}

.amadeus-seat-dot.is-occupied {
	background: #e5e7eb;
}

.amadeus-seat-dot.is-extra {
	background: #6b7280;
}

.amadeus-flygo-seat-drawer-body {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 400px;
	gap: 24px;
	padding: 16px 24px 24px;
	flex: 1;
	min-height: 0;
	overflow: hidden;
	background: #f9fafb;
}

.amadeus-flygo-aircraft {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: flex-start;
	min-height: 0;
	flex: 1;
	overflow: auto;
	padding: 8px 52px 16px;
}

/* Content-driven aircraft shell — fuselage width matches seat grid */
.amadeus-flygo-aircraft-shell {
	width: min(100%, 268px);
	margin: 0 auto;
	flex-shrink: 0;
	display: flex;
	flex-direction: column;
	align-items: stretch;
	filter: drop-shadow(0 6px 20px rgba(15, 23, 42, 0.07));
}

.amadeus-flygo-aircraft-nose svg,
.amadeus-flygo-aircraft-tail-graphic {
	display: block;
	width: 100%;
	height: auto;
}

.amadeus-flygo-aircraft-nose {
	background: linear-gradient(90deg, #e2e8f0 0%, #f8fafc 8%, #ffffff 50%, #f8fafc 92%, #e2e8f0 100%);
	border-left: 2px solid #cbd5e1;
	border-right: 2px solid #cbd5e1;
	border-radius: 12px 12px 0 0;
	overflow: hidden;
}

.amadeus-flygo-aircraft-galleys {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 10px;
	padding: 10px 14px;
	background: linear-gradient(90deg, #e2e8f0 0%, #f8fafc 8%, #ffffff 50%, #f8fafc 92%, #e2e8f0 100%);
	border-left: 2px solid #cbd5e1;
	border-right: 2px solid #cbd5e1;
}

.amadeus-flygo-aircraft-galleys.is-rear {
	padding-top: 12px;
	padding-bottom: 8px;
}

.amadeus-flygo-lav-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 44px;
	color: #64748b;
	background: #fff;
	border: 1.5px solid #d1d9e0;
	border-radius: 10px;
	padding: 6px 4px;
}

.amadeus-flygo-aircraft-body {
	position: relative;
	display: flex;
	align-items: stretch;
	justify-content: center;
}

.amadeus-flygo-aircraft-fuselage {
	flex: 1;
	min-width: 0;
	background: linear-gradient(90deg, #e2e8f0 0%, #f8fafc 6%, #ffffff 50%, #f8fafc 94%, #e2e8f0 100%);
	border-left: 2px solid #cbd5e1;
	border-right: 2px solid #cbd5e1;
	padding: 6px 8px 8px;
}

.amadeus-flygo-aircraft-wing {
	position: absolute;
	top: 0;
	width: 52px;
	height: 72px;
	pointer-events: none;
	z-index: 0;
}

.amadeus-flygo-aircraft-wing.is-left {
	left: -46px;
}

.amadeus-flygo-aircraft-wing.is-right {
	right: -46px;
}

.amadeus-flygo-aircraft-body:has(.amadeus-flygo-seat-row.has-wing) .amadeus-flygo-aircraft-wing {
	top: var(--amadeus-wing-top, 42%);
	transform: translateY(-50%);
}

.amadeus-flygo-aircraft-fuselage .amadeus-flygo-seat-grid-wrap {
	background: transparent;
	border: none;
	border-radius: 0;
	padding: 0;
	position: relative;
	z-index: 1;
}

.amadeus-flygo-aircraft-fuselage .amadeus-flygo-seat-col-labels {
	display: grid;
	grid-template-columns: repeat(3, 32px) 22px repeat(3, 32px);
	gap: 5px;
	justify-content: center;
	margin-bottom: 6px;
	font-size: 10px;
	font-weight: 700;
	color: #9ca3af;
	text-align: center;
}

.amadeus-flygo-aircraft-fuselage .amadeus-flygo-seat-row {
	display: grid;
	grid-template-columns: repeat(3, 32px) 22px repeat(3, 32px);
	gap: 5px;
	justify-content: center;
	align-items: center;
	margin-bottom: 5px;
}

.amadeus-flygo-aircraft-fuselage .amadeus-flygo-row-num {
	font-size: 10px;
}

.amadeus-flygo-aircraft-fuselage .amadeus-flygo-seat {
	width: 32px;
	height: 32px;
	border-radius: 7px;
	font-size: 10px;
}

.amadeus-flygo-aircraft-fuselage .amadeus-flygo-exit-row {
	margin: 5px 0;
}

.amadeus-flygo-aircraft-fuselage .amadeus-flygo-exit-edge {
	font-size: 9px;
}

.amadeus-flygo-aircraft-tail {
	background: linear-gradient(90deg, #e2e8f0 0%, #f8fafc 8%, #ffffff 50%, #f8fafc 92%, #e2e8f0 100%);
	border-left: 2px solid #cbd5e1;
	border-right: 2px solid #cbd5e1;
	border-bottom: 2px solid #cbd5e1;
	border-radius: 0 0 12px 12px;
	overflow: hidden;
}

.amadeus-flygo-aircraft-tail-graphic {
	margin-top: -1px;
}

.amadeus-flygo-seat-row.has-wing {
	position: relative;
}

.amadeus-flygo-seat-grid-wrap {
	position: relative;
	z-index: 1;
	background: #fff;
	border: 1px solid #e5e7eb;
	border-radius: 10px;
	padding: 12px 10px 8px;
}

.amadeus-flygo-seat-col-labels {
	display: grid;
	grid-template-columns: repeat(3, 38px) 30px repeat(3, 38px);
	gap: 6px;
	justify-content: center;
	margin-bottom: 8px;
	font-size: 11px;
	font-weight: 700;
	color: #9ca3af;
	text-align: center;
}

.amadeus-flygo-seat-aisle-gap {
	visibility: hidden;
}

.amadeus-flygo-seat-row {
	display: grid;
	grid-template-columns: repeat(3, 38px) 30px repeat(3, 38px);
	gap: 6px;
	justify-content: center;
	align-items: center;
	margin-bottom: 5px;
}

.amadeus-flygo-seat-group {
	display: contents;
}

.amadeus-flygo-row-num {
	text-align: center;
	font-size: 11px;
	font-weight: 700;
	color: #9ca3af;
}

.amadeus-flygo-seat {
	width: 38px;
	height: 38px;
	border: 2px solid #e5e7eb;
	border-radius: 8px;
	background: #fff;
	cursor: pointer;
	font-size: 10px;
	font-weight: 700;
	color: #fff;
	padding: 0;
	line-height: 1;
	transition: background 0.15s ease, border-color 0.15s ease, transform 0.1s ease, box-shadow 0.15s ease;
}

.amadeus-flygo-seat.is-standard:not(.is-occupied):not(.is-selected) {
	background: #22c55e;
	border-color: #16a34a;
	color: transparent;
}

.amadeus-flygo-seat.is-extra:not(.is-occupied):not(.is-selected) {
	background: #6b7280;
	border-color: #4b5563;
	color: #fff;
	font-size: 11px;
	font-weight: 800;
}

.amadeus-flygo-seat.is-occupied {
	background: #f3f4f6;
	border-color: #e5e7eb;
	cursor: not-allowed;
	color: #9ca3af;
}

.amadeus-flygo-seat.is-selected {
	border-color: #ff6a00 !important;
	border-width: 3px !important;
	box-shadow: 0 0 0 1px #ff6a00, 0 4px 12px rgba(255, 106, 0, 0.3);
	transform: scale(1.04);
}

.amadeus-flygo-seat.is-standard.is-selected {
	background: #22c55e !important;
	color: transparent !important;
}

.amadeus-flygo-seat.is-extra.is-selected {
	background: #6b7280 !important;
	color: #fff !important;
}

.amadeus-flygo-seat.is-standard:not(.is-occupied):not(.is-selected):hover,
.amadeus-flygo-seat.is-extra:not(.is-occupied):not(.is-selected):hover {
	border-color: #ff6a00;
	box-shadow: 0 2px 8px rgba(255, 106, 0, 0.2);
}

.amadeus-seat-x {
	font-size: 14px;
	line-height: 1;
	color: #9ca3af;
}

.amadeus-flygo-exit-row {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	align-items: center;
	width: 100%;
	margin: 6px 0;
	padding: 0 2px;
}

.amadeus-flygo-exit-edge {
	color: #ef4444;
	font-weight: 800;
	font-size: 10px;
	letter-spacing: 0.06em;
	line-height: 1.2;
}

.amadeus-flygo-exit-edge.is-left {
	text-align: left;
}

.amadeus-flygo-exit-edge.is-center {
	visibility: hidden;
}

.amadeus-flygo-exit-edge.is-right {
	text-align: right;
}

.amadeus-flygo-seat-sidebar {
	display: flex;
	flex-direction: column;
	gap: 12px;
	min-height: 0;
	overflow: auto;
	padding-top: 4px;
}

.amadeus-flygo-seat-card {
	border: 1px solid #e5e7eb;
	border-radius: 16px;
	padding: 16px;
	background: #fff;
	box-shadow: 0 4px 16px rgba(15, 23, 42, 0.04);
}

.amadeus-flygo-seat-card h3 {
	margin: 0 0 12px;
	font-size: 15px;
	font-weight: 700;
	color: #1f2937;
}

.amadeus-flygo-selected-seat-display {
	display: flex;
	align-items: center;
	gap: 14px;
}

.amadeus-flygo-selected-seat-badge {
	background: #ff6a00;
	color: #fff;
	font-weight: 800;
	min-width: 52px;
	padding: 12px 10px;
	border-radius: 10px;
	font-size: 14px;
	text-align: center;
	line-height: 1;
}

.amadeus-flygo-selected-seat-meta strong {
	display: block;
	font-size: 14px;
	color: #1f2937;
	margin-bottom: 2px;
}

.amadeus-flygo-selected-seat-meta span {
	font-size: 14px;
	font-weight: 600;
	color: #6b7280;
}

.amadeus-flygo-seat-upsell {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	background: #fff7ed;
	border-color: #fed7aa;
}

.amadeus-flygo-seat-upsell-body strong {
	display: block;
	font-size: 14px;
	color: #1f2937;
}

.amadeus-flygo-seat-upsell-body span {
	display: block;
	font-size: 12px;
	color: #6b7280;
	margin-top: 4px;
	line-height: 1.35;
}

.amadeus-flygo-seat-upsell-side {
	display: flex;
	align-items: center;
	gap: 10px;
	font-weight: 700;
	font-size: 14px;
	color: #1f2937;
	flex-shrink: 0;
}

.amadeus-flygo-seat-upsell-add {
	border: 0;
	background: #ff6a00;
	color: #fff;
	font-weight: 700;
	font-size: 13px;
	padding: 8px 16px;
	border-radius: 999px;
	cursor: pointer;
	line-height: 1.2;
}

.amadeus-flygo-seat-upsell-add:hover {
	filter: brightness(0.95);
}

.amadeus-flygo-seat-price-lines div {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 8px 0;
	border-bottom: 1px solid #f3f4f6;
	font-size: 14px;
	color: #4b5563;
}

.amadeus-flygo-seat-price-lines strong {
	color: #1f2937;
	font-weight: 700;
}

.amadeus-flygo-seat-total-line {
	font-size: 16px;
	font-weight: 800;
	border-bottom: 0;
	padding-top: 8px;
	margin-top: 2px;
}

.amadeus-flygo-seat-continue {
	width: 100%;
	margin-top: 14px;
	border-radius: 12px;
	padding: 14px 20px;
}

.amadeus-flygo-seat-info-btn {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	border: 1px solid #e5e7eb;
	background: #fff;
	border-radius: 999px;
	padding: 8px 14px;
	font-weight: 600;
	font-size: 13px;
	cursor: pointer;
	color: #374151;
}

.amadeus-flygo-seat-info-icon {
	display: flex;
	color: #3b82f6;
}

.amadeus-flygo-seat-icon {
	display: flex;
	color: #ff6a00;
}

.amadeus-flygo-seat-trigger-card {
	cursor: pointer;
	transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.amadeus-flygo-seat-trigger-card:hover {
	border-color: #ff6a00;
	box-shadow: 0 4px 16px rgba(255, 106, 0, 0.1);
}

.amadeus-flygo-seat-trigger-card:focus {
	outline: none;
	border-color: #ff6a00;
	box-shadow: 0 0 0 3px rgba(255, 106, 0, 0.15);
}

@media (max-width: 1100px) {
	.amadeus-flygo-checkout-grid {
		grid-template-columns: 1fr;
	}

	.amadeus-flygo-seat-drawer {
		width: 100%;
	}

	.amadeus-flygo-seat-drawer-body {
		grid-template-columns: 1fr;
		overflow: auto;
	}

	.amadeus-flygo-plane {
		width: min(100%, 220px);
	}

	.amadeus-flygo-plane-wing.is-left {
		left: -40px;
		width: 44px;
	}

	.amadeus-flygo-plane-wing.is-right {
		right: -40px;
		width: 44px;
	}
}

@media (max-width: 768px) {
	.amadeus-flygo-checkout-bar-inner {
		flex-wrap: wrap;
		gap: 12px;
		padding: 12px 16px;
	}

	.amadeus-flygo-checkout-bar-left {
		width: 100%;
	}

	.amadeus-flygo-checkout-bar-right {
		width: 100%;
		flex-wrap: wrap;
		justify-content: space-between;
		gap: 12px;
		margin-left: 0;
	}

	.amadeus-flygo-checkout-total {
		justify-content: flex-start;
		gap: 16px;
	}

	.amadeus-flygo-checkout-total-main {
		align-items: flex-start;
	}

	.amadeus-flygo-checkout-total-side {
		padding-left: 16px;
	}

	.amadeus-flygo-checkout-cta {
		width: 100%;
	}

	.amadeus-flygo-passenger-grid {
		grid-template-columns: 1fr;
	}

	.amadeus-flygo-seat-trigger-card,
	.amadeus-flygo-insurance-card {
		flex-direction: column;
		align-items: flex-start;
	}
}

/* Checkout overrides — high specificity + !important for theme conflicts */
#amadeus-flight-checkout.amadeus-flygo-checkout--unified {
	/* max-width: 1280px !important;
	width: 100% !important; */
	margin: 0 auto !important;
	padding-bottom: var(--flygo-checkout-footer, 72px) !important;
	display: flex !important;
	flex-direction: column !important;
	gap: 12px !important;
	box-sizing: border-box !important;
}

#amadeus-flight-checkout.amadeus-flygo-checkout--unified .amadeus-flygo-checkout-card,
#amadeus-flight-checkout.amadeus-flygo-checkout--unified .amadeus-flygo-section,
#amadeus-flight-checkout.amadeus-flygo-checkout--unified .amadeus-flygo-fare-panel {
	margin-bottom: 0 !important;
	padding: 16px 18px !important;
	background: #fff !important;
	border: 1px solid var(--amadeus-border, #e5e7eb) !important;
	border-radius: 18px !important;
	box-shadow: 0 8px 24px rgba(15, 23, 42, 0.05) !important;
}

#amadeus-flight-checkout .amadeus-flygo-checkout-grid {
	display: grid !important;
	grid-template-columns: 1fr 1fr !important;
	gap: 12px !important;
	align-items: stretch !important;
}

#amadeus-flight-checkout .amadeus-flygo-checkout-col {
	display: flex !important;
	flex-direction: column !important;
	gap: 12px !important;
	min-width: 0 !important;
}

#amadeus-flight-checkout .amadeus-flygo-checkout-col--passengers > .amadeus-flygo-section {
	flex: 1 !important;
}

#amadeus-flight-checkout .amadeus-flygo-checkout-bar--fixed {
	position: fixed !important;
	left: 0 !important;
	right: 0 !important;
	bottom: 0 !important;
	z-index: 900 !important;
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	border-top: 1px solid #e5e7eb !important;
	border-radius: 0 !important;
	background: #fff !important;
	box-shadow: 0 -2px 20px rgba(15, 23, 42, 0.06) !important;
	display: block !important;
}

#amadeus-flight-checkout .amadeus-flygo-checkout-bar-inner {
	max-width: 1280px !important;
	width: 100% !important;
	margin: 0 auto !important;
	padding: 12px 40px !important;
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 16px !important;
	min-height: 56px !important;
	box-sizing: border-box !important;
}

#amadeus-flight-checkout .amadeus-flygo-checkout-bar-left {
	flex-shrink: 0 !important;
}

#amadeus-flight-checkout .amadeus-flygo-checkout-bar-right {
	display: flex !important;
	align-items: center !important;
	justify-content: flex-end !important;
	gap: 24px !important;
	margin-left: auto !important;
	flex-shrink: 0 !important;
}

#amadeus-flight-checkout .amadeus-flygo-back-link {
	display: inline-flex !important;
	align-items: center !important;
	gap: 8px !important;
	color: #6b7280 !important;
	font-weight: 600 !important;
	font-size: 15px !important;
	text-decoration: none !important;
}

#amadeus-flight-checkout .amadeus-flygo-back-arrow {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	flex-shrink: 0 !important;
	color: #9ca3af !important;
	line-height: 0 !important;
}

#amadeus-flight-checkout .amadeus-flygo-checkout-total {
	display: flex !important;
	flex-direction: row !important;
	align-items: center !important;
	gap: 24px !important;
	margin: 0 !important;
}

#amadeus-flight-checkout .amadeus-flygo-checkout-total-main {
	display: flex !important;
	flex-direction: column !important;
	align-items: flex-start !important;
	gap: 0 !important;
}

#amadeus-flight-checkout .amadeus-flygo-checkout-total-side {
	display: flex !important;
	align-items: center !important;
	padding-left: 24px !important;
	border-left: 1px solid #e5e7eb !important;
}

#amadeus-flight-checkout .amadeus-flygo-checkout-total-label {
	font-size: 12px !important;
	font-weight: 500 !important;
	color: #9ca3af !important;
	line-height: 1.2 !important;
}

#amadeus-flight-checkout .amadeus-flygo-checkout-total-amount {
	font-size: 26px;
	font-weight: 800 !important;
	color: #111827 !important;
	line-height: 1.1 !important;
	margin: 1px 0 0 !important;
}

#amadeus-flight-checkout .amadeus-flygo-checkout-fare-link {
	display: inline-flex !important;
	align-items: center !important;
	gap: 6px !important;
	border: 0 !important;
	background: transparent !important;
	color: #ff6a00 !important;
	font-weight: 700 !important;
	font-size: 14px !important;
	padding: 0 !important;
	margin: 0 !important;
	min-height: 0 !important;
	width: auto !important;
	box-shadow: none !important;
	white-space: nowrap !important;
}

#amadeus-flight-checkout .amadeus-flygo-fare-chevron {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	flex-shrink: 0 !important;
	line-height: 0 !important;
	transition: transform 0.2s ease !important;
}

#amadeus-flight-checkout .amadeus-flygo-checkout-fare-link[aria-expanded="true"] .amadeus-flygo-fare-chevron {
	transform: rotate(180deg) !important;
}

#amadeus-flight-checkout .amadeus-flygo-checkout-fare-link:hover {
	color: #e55f00 !important;
	text-decoration: underline !important;
}

#amadeus-flight-checkout .amadeus-flygo-checkout-cta {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 8px !important;
	background: #ff6a00 !important;
	color: #fff !important;
	border: 0 !important;
	border-radius: 10px !important;
	padding: 11px 28px !important;
	font-size: 15px !important;
	font-weight: 700 !important;
	line-height: 1.2 !important;
	min-height: 44px !important;
	min-width: 0 !important;
	width: auto !important;
	white-space: nowrap !important;
	cursor: pointer !important;
	box-shadow: 0 4px 16px rgba(255, 106, 0, 0.32) !important;
}

#amadeus-flight-checkout .amadeus-flygo-checkout-cta svg {
	flex-shrink: 0 !important;
}

#amadeus-flight-checkout .amadeus-flygo-checkout-cta:hover {
	filter: brightness(0.96) !important;
	color: #fff !important;
}

#amadeus-flight-checkout .amadeus-flygo-passenger-form {
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	background: transparent !important;
}

#amadeus-flight-checkout .amadeus-flygo-passenger-panel {
	border: 1px solid #e5e7eb !important;
	border-radius: 14px !important;
	margin-bottom: 10px !important;
	background: #fafafa !important;
	overflow: hidden !important;
}

#amadeus-flight-checkout .amadeus-flygo-passenger-panel summary {
	display: flex !important;
	align-items: center !important;
	gap: 12px !important;
	padding: 14px 16px !important;
	font-weight: 700 !important;
	cursor: pointer !important;
	list-style: none !important;
}

#amadeus-flight-checkout .amadeus-flygo-passenger-num {
	width: 28px !important;
	height: 28px !important;
	border-radius: 50% !important;
	background: #ff6a00 !important;
	color: #fff !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	font-size: 13px !important;
	flex-shrink: 0 !important;
}

#amadeus-flight-checkout .amadeus-flygo-passenger-fields {
	padding: 0 16px 16px !important;
}

#amadeus-flight-checkout .amadeus-flygo-passenger-grid {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	gap: 12px 16px !important;
	margin: 0 !important;
}

#amadeus-flight-checkout .amadeus-flygo-form-field {
	display: block !important;
	margin: 0 !important;
	padding: 0 !important;
	position: relative !important;
	flex: none !important;
	min-width: 0 !important;
	width: 100% !important;
	box-sizing: border-box !important;
}

#amadeus-flight-checkout .amadeus-flygo-form-field label,
#amadeus-flight-checkout .amadeus-flygo-form-field .amadeus-flygo-form-field-label {
	display: block !important;
	font-size: 12px !important;
	font-weight: 600 !important;
	color: #6b7280 !important;
	margin: 0 0 6px !important;
	line-height: 1.3 !important;
}

#amadeus-flight-checkout .amadeus-flygo-form-field input[type="text"],
#amadeus-flight-checkout .amadeus-flygo-form-field input[type="email"],
#amadeus-flight-checkout .amadeus-flygo-form-field input[type="tel"],
#amadeus-flight-checkout .amadeus-flygo-form-field input[type="date"],
#amadeus-flight-checkout .amadeus-flygo-form-field select {
	display: block !important;
	width: 100% !important;
	min-height: 44px !important;
	height: auto !important;
	padding: 10px 12px !important;
	border: 1px solid #e5e7eb !important;
	border-radius: 10px !important;
	background: #fff !important;
	font-size: 14px !important;
	font-weight: 500 !important;
	color: #111827 !important;
	box-shadow: none !important;
	margin: 0 !important;
	line-height: 1.4 !important;
	box-sizing: border-box !important;
	-webkit-appearance: none !important;
	appearance: none !important;
}

#amadeus-flight-checkout .amadeus-flygo-form-field select {
	padding-right: 36px !important;
	background-image: var(--amadeus-flygo-select-chevron) !important;
	background-repeat: no-repeat !important;
	background-position: right 12px center !important;
	background-size: 14px 14px !important;
	background-color: #fff !important;
}

#amadeus-flight-checkout .amadeus-flygo-form-field input[type="date"] {
	padding-right: 12px !important;
}

#amadeus-flight-checkout .amadeus-flygo-form-field input:focus,
#amadeus-flight-checkout .amadeus-flygo-form-field select:focus {
	outline: none !important;
	border-color: #ff6a00 !important;
	box-shadow: 0 0 0 3px rgba(255, 106, 0, 0.15) !important;
	background-color: #fff !important;
}

#amadeus-flight-checkout .amadeus-flygo-gender-field .amadeus-flygo-gender-options {
	display: flex !important;
	align-items: center !important;
	flex-wrap: wrap !important;
	gap: 16px 24px !important;
	min-height: 44px !important;
	padding: 10px 12px !important;
	border: 1px solid #e5e7eb !important;
	border-radius: 10px !important;
	background: #fff !important;
	box-sizing: border-box !important;
}

#amadeus-flight-checkout .amadeus-flygo-gender-options label {
	display: inline-flex !important;
	align-items: center !important;
	gap: 8px !important;
	font-size: 14px !important;
	font-weight: 500 !important;
	color: #111827 !important;
	margin: 0 !important;
	cursor: pointer !important;
}

#amadeus-flight-checkout .amadeus-flygo-gender-options input[type="radio"] {
	width: 18px !important;
	height: 18px !important;
	min-height: 18px !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 1px solid #d1d5db !important;
	accent-color: #ff6a00 !important;
	flex-shrink: 0 !important;
}

#amadeus-flight-checkout .amadeus-flygo-flight-details-toggle {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 8px !important;
	background: #ff6a00 !important;
	color: #fff !important;
	border: 0 !important;
	border-radius: 10px !important;
	padding: 11px 20px !important;
	font-size: 14px !important;
	font-weight: 700 !important;
	min-height: 44px !important;
	box-shadow: 0 4px 16px rgba(255, 106, 0, 0.28) !important;
}

#amadeus-flight-checkout .amadeus-flygo-flight-details-toggle:hover {
	filter: brightness(0.96) !important;
	color: #fff !important;
}

#amadeus-flight-checkout .amadeus-flygo-seat-field {
	position: relative !important;
	margin-bottom: 16px !important;
}

#amadeus-flight-checkout .amadeus-flygo-seat-field.amadeus-field-invalid .amadeus-flygo-seat-trigger-card {
	border-color: #e02424 !important;
	box-shadow: 0 0 0 1px rgba(224, 36, 36, 0.35) !important;
}

#amadeus-flight-checkout .amadeus-flygo-seat-trigger-card,
#amadeus-flight-checkout .amadeus-flygo-insurance-card {
	display: flex !important;
	align-items: center !important;
	gap: 14px !important;
	border: 1px solid #e5e7eb !important;
	border-radius: 14px !important;
	padding: 16px !important;
	margin-top: 14px !important;
	background: #fff !important;
	flex-direction: row;
}

#amadeus-flight-checkout .amadeus-flygo-seat-trigger-card {
	justify-content: space-between !important;
}

#amadeus-flight-checkout .amadeus-flygo-section > h2 {
	margin: 0 0 6px !important;
	font-size: 22px !important;
	line-height: 1.3 !important;
}

#amadeus-flight-checkout .amadeus-flygo-section-desc {
	margin: 0 0 14px !important;
	color: #6b7280 !important;
	font-size: 14px !important;
}

#amadeus-flight-checkout .amadeus-flygo-seat-trigger-card {
	cursor: pointer !important;
}

#amadeus-flight-checkout .amadeus-flygo-payment-section {
	margin-top: 20px !important;
}

#amadeus-flight-checkout .amadeus-flygo-checkout-sidebar--sticky {
	position: sticky !important;
	top: 12px !important;
	z-index: 2 !important;
	display: flex !important;
	flex-direction: column !important;
	gap: 12px !important;
	align-self: start !important;
	width: 100% !important;
}

#amadeus-flight-checkout .amadeus-flygo-payment-section--sidebar {
	margin-top: 0 !important;
}

#amadeus-flight-checkout .amadeus-flygo-payment-gateways {
	display: flex !important;
	flex-direction: column !important;
	gap: 10px !important;
}

#amadeus-flight-checkout .amadeus-flygo-payment-option {
	display: flex !important;
	align-items: flex-start !important;
	gap: 12px !important;
	border: 1px solid #e5e7eb !important;
	border-radius: 14px !important;
	padding: 14px 16px !important;
	background: #fff !important;
	cursor: pointer !important;
	transition: border-color 0.15s ease, box-shadow 0.15s ease !important;
}

#amadeus-flight-checkout .amadeus-flygo-payment-option.is-selected {
	border-color: #ff6a00 !important;
	box-shadow: 0 0 0 1px #ff6a00 !important;
}

#amadeus-flight-checkout .amadeus-flygo-payment-option input[type="radio"] {
	width: 18px !important;
	height: 18px !important;
	min-height: 18px !important;
	margin: 2px 0 0 !important;
	accent-color: #ff6a00 !important;
	flex-shrink: 0 !important;
}

#amadeus-flight-checkout .amadeus-flygo-payment-option-body {
	display: flex !important;
	flex-direction: column !important;
	gap: 4px !important;
}

#amadeus-flight-checkout .amadeus-flygo-payment-option-body strong {
	font-size: 15px !important;
	color: #111827 !important;
}

#amadeus-flight-checkout .amadeus-flygo-payment-option-body span {
	font-size: 13px !important;
	color: #6b7280 !important;
	line-height: 1.45 !important;
}

#amadeus-flight-checkout .amadeus-flygo-payment-empty {
	color: #6b7280 !important;
	font-size: 14px !important;
	margin: 0 !important;
}

/* Order received / thank you (flight bookings) */
body.amadeus-flygo-order-received-page .page-title,
body.amadeus-flygo-order-received-page .entry-title {
	display: none !important;
}

#amadeus-flight-order-received.amadeus-flygo-order-received {
	max-width: 960px !important;
	margin: 0 auto 48px !important;
	padding: 0 16px !important;
}

#amadeus-flight-order-received .amadeus-flygo-order-hero {
	text-align: center !important;
	padding: 28px 20px 24px !important;
	margin-bottom: 20px !important;
	border-radius: 16px !important;
	background: #fff !important;
	border: 1px solid #e5e7eb !important;
}

#amadeus-flight-order-received .amadeus-flygo-order-hero--success {
	border-color: #bbf7d0 !important;
	background: linear-gradient(180deg, #f0fdf4 0%, #fff 100%) !important;
}

#amadeus-flight-order-received .amadeus-flygo-order-hero--failed {
	border-color: #fecaca !important;
	background: linear-gradient(180deg, #fef2f2 0%, #fff 100%) !important;
}

#amadeus-flight-order-received .amadeus-flygo-order-hero-icon {
	width: 56px !important;
	height: 56px !important;
	margin: 0 auto 14px !important;
	border-radius: 50% !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	font-size: 28px !important;
	font-weight: 700 !important;
	line-height: 1 !important;
}

#amadeus-flight-order-received .amadeus-flygo-order-hero--success .amadeus-flygo-order-hero-icon {
	background: #22c55e !important;
	color: #fff !important;
}

#amadeus-flight-order-received .amadeus-flygo-order-hero--failed .amadeus-flygo-order-hero-icon {
	background: #ef4444 !important;
	color: #fff !important;
}

#amadeus-flight-order-received .amadeus-flygo-order-hero h1 {
	margin: 0 0 8px !important;
	font-size: 26px !important;
	line-height: 1.3 !important;
	color: #111827 !important;
}

#amadeus-flight-order-received .amadeus-flygo-order-hero p {
	margin: 0 !important;
	color: #6b7280 !important;
	font-size: 15px !important;
}

#amadeus-flight-order-received .amadeus-flygo-order-hero-actions {
	display: flex !important;
	flex-wrap: wrap !important;
	gap: 10px !important;
	justify-content: center !important;
	margin-top: 18px !important;
}

#amadeus-flight-order-received .amadeus-flygo-order-flight-card {
	margin-bottom: 18px !important;
}

#amadeus-flight-order-received .amadeus-flygo-order-grid {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	gap: 16px !important;
	margin-bottom: 16px !important;
}

#amadeus-flight-order-received .amadeus-flygo-order-details-card,
#amadeus-flight-order-received .amadeus-flygo-order-extras-card {
	border: 1px solid #e5e7eb !important;
	border-radius: 14px !important;
	padding: 18px 20px !important;
	background: #fff !important;
}

#amadeus-flight-order-received .amadeus-flygo-order-details-card h2,
#amadeus-flight-order-received .amadeus-flygo-order-extras-card h2 {
	margin: 0 0 14px !important;
	font-size: 18px !important;
}

#amadeus-flight-order-received .amadeus-flygo-order-details {
	display: grid !important;
	gap: 12px !important;
	margin: 0 !important;
}

#amadeus-flight-order-received .amadeus-flygo-order-details div {
	display: grid !important;
	gap: 2px !important;
}

#amadeus-flight-order-received .amadeus-flygo-order-details dt {
	font-size: 12px !important;
	color: #6b7280 !important;
	font-weight: 500 !important;
}

#amadeus-flight-order-received .amadeus-flygo-order-details dd {
	margin: 0 !important;
	font-size: 15px !important;
	color: #111827 !important;
	font-weight: 600 !important;
}

#amadeus-flight-order-received .amadeus-flygo-order-total {
	color: #ff6a00 !important;
	font-size: 18px !important;
}

#amadeus-flight-order-received .amadeus-flygo-order-reference {
	font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace !important;
}

#amadeus-flight-order-received .amadeus-flygo-order-status--pending {
	color: #d97706 !important;
}

#amadeus-flight-order-received .amadeus-flygo-order-status--failed {
	color: #dc2626 !important;
}

#amadeus-flight-order-received .amadeus-flygo-order-passengers {
	list-style: none !important;
	margin: 0 !important;
	padding: 0 !important;
	display: grid !important;
	gap: 10px !important;
}

#amadeus-flight-order-received .amadeus-flygo-order-passengers li {
	display: grid !important;
	gap: 2px !important;
	padding-bottom: 10px !important;
	border-bottom: 1px solid #f3f4f6 !important;
}

#amadeus-flight-order-received .amadeus-flygo-order-passengers li:last-child {
	border-bottom: none !important;
	padding-bottom: 0 !important;
}

#amadeus-flight-order-received .amadeus-flygo-order-passenger-card {
	padding: 12px 0 !important;
	border-bottom: 1px solid #f3f4f6 !important;
}

#amadeus-flight-order-received .amadeus-flygo-order-passenger-card:last-child {
	border-bottom: none !important;
	padding-bottom: 0 !important;
}

#amadeus-flight-order-received .amadeus-flygo-order-passenger-head {
	display: flex !important;
	align-items: center !important;
	gap: 10px !important;
	margin-bottom: 10px !important;
}

#amadeus-flight-order-received .amadeus-flygo-order-passenger-head .amadeus-flygo-passenger-num {
	width: 28px !important;
	height: 28px !important;
	border-radius: 50% !important;
	background: #ff6a00 !important;
	color: #fff !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	font-size: 13px !important;
	font-weight: 700 !important;
	flex-shrink: 0 !important;
}

#amadeus-flight-order-received .amadeus-flygo-order-passenger-fields {
	display: grid !important;
	gap: 8px !important;
	margin: 0 !important;
}

#amadeus-flight-order-received .amadeus-flygo-order-passenger-fields div {
	display: grid !important;
	grid-template-columns: 120px 1fr !important;
	gap: 8px !important;
	align-items: baseline !important;
}

#amadeus-flight-order-received .amadeus-flygo-order-passenger-fields dt {
	font-size: 13px !important;
	color: #6b7280 !important;
	font-weight: 500 !important;
	margin: 0 !important;
}

#amadeus-flight-order-received .amadeus-flygo-order-passenger-fields dd {
	margin: 0 !important;
	font-size: 14px !important;
	color: #111827 !important;
	font-weight: 600 !important;
}

#amadeus-flight-order-received .amadeus-flygo-order-passengers span {
	font-size: 13px !important;
	color: #6b7280 !important;
}

#amadeus-flight-order-received .amadeus-flygo-order-details--compact {
	margin-top: 12px !important;
}

#amadeus-flight-order-received .amadeus-flygo-order-extras-list {
	list-style: none !important;
	margin: 0 !important;
	padding: 0 !important;
	display: grid !important;
	gap: 10px !important;
}

#amadeus-flight-order-received .amadeus-flygo-order-extras-list li {
	display: flex !important;
	justify-content: space-between !important;
	align-items: center !important;
	gap: 12px !important;
	padding: 10px 0 !important;
	border-bottom: 1px solid #f3f4f6 !important;
	font-size: 14px !important;
}

#amadeus-flight-order-received .amadeus-flygo-order-extras-list li:last-child {
	border-bottom: none !important;
}

#amadeus-flight-order-received .amadeus-flygo-order-extras-list span {
	color: #6b7280 !important;
}

#amadeus-flight-order-received .amadeus-flygo-order-empty {
	margin: 0 !important;
	color: #6b7280 !important;
	font-size: 14px !important;
}

#amadeus-flight-order-received .amadeus-flygo-order-actions {
	display: flex !important;
	flex-wrap: wrap !important;
	gap: 12px !important;
	justify-content: center !important;
	margin-top: 24px !important;
}

#amadeus-flight-order-received .amadeus-flygo-order-secondary-btn {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	padding: 12px 22px !important;
	border-radius: 10px !important;
	border: 1px solid #d1d5db !important;
	background: #fff !important;
	color: #374151 !important;
	font-weight: 600 !important;
	text-decoration: none !important;
}

#amadeus-flight-order-received .amadeus-flygo-order-secondary-btn:hover {
	border-color: #9ca3af !important;
	color: #111827 !important;
}

@media (max-width: 768px) {
	#amadeus-flight-order-received .amadeus-flygo-order-grid {
		grid-template-columns: 1fr !important;
	}

	#amadeus-flight-order-received .amadeus-flygo-order-hero h1 {
		font-size: 22px !important;
	}

	#amadeus-flight-order-received .amadeus-flygo-order-actions {
		flex-direction: column !important;
	}

	#amadeus-flight-order-received .amadeus-flygo-order-passenger-fields div {
		grid-template-columns: 1fr !important;
	}

	#amadeus-flight-order-received .amadeus-flygo-order-actions .amadeus-btn {
		width: 100% !important;
	}
}

@media (max-width: 1100px) {
	#amadeus-flight-checkout .amadeus-flygo-checkout-grid {
		grid-template-columns: 1fr !important;
	}
}

@media (max-width: 768px) {
	#amadeus-flight-checkout .amadeus-flygo-passenger-grid {
		grid-template-columns: 1fr !important;
	}

	#amadeus-flight-checkout .amadeus-flygo-checkout-bar-inner {
		flex-wrap: wrap !important;
		gap: 12px !important;
		padding: 12px 16px !important;
	}

	#amadeus-flight-checkout .amadeus-flygo-checkout-bar-left {
		width: 100% !important;
	}

	#amadeus-flight-checkout .amadeus-flygo-checkout-bar-right {
		width: 100% !important;
		flex-wrap: wrap !important;
		justify-content: space-between !important;
		gap: 12px !important;
		margin-left: 0 !important;
	}

	#amadeus-flight-checkout .amadeus-flygo-checkout-total {
		justify-content: flex-start !important;
		gap: 16px !important;
	}

	#amadeus-flight-checkout .amadeus-flygo-checkout-total-main {
		align-items: flex-start !important;
	}

	#amadeus-flight-checkout .amadeus-flygo-checkout-total-side {
		padding-left: 16px !important;
	}

	#amadeus-flight-checkout .amadeus-flygo-checkout-cta {
		width: 100% !important;
	}
}

/* Round-trip results layout */
.amadeus-flygo-summary-bar--rt {
	display: grid;
	grid-template-columns: auto minmax(220px, 1.4fr) minmax(180px, 1fr) auto;
	gap: 18px 24px;
	align-items: center;
}

.amadeus-flygo-summary-trip {
	display: flex;
	align-items: center;
	gap: 10px;
	padding-right: 16px;
	border-right: 1px solid var(--amadeus-border);
	min-width: 170px;
}

.amadeus-flygo-summary-trip-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
	border: 1px solid var(--amadeus-border);
	border-radius: 999px;
	background: #fff;
	color: var(--amadeus-primary);
	flex-shrink: 0;
}

.amadeus-flygo-summary-trip-icon svg {
	display: block;
	width: 18px;
	height: 18px;
	flex-shrink: 0;
}

.amadeus-flygo-summary-trip-meta {
	display: flex;
	flex-direction: column;
	gap: 2px;
}

.amadeus-flygo-summary-trip-meta strong {
	font-size: 14px;
	color: var(--amadeus-secondary);
}

.amadeus-flygo-summary-trip-meta span {
	font-size: 12px;
	color: var(--amadeus-muted);
	font-weight: 600;
}

.amadeus-flygo-summary-edit {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 32px;
	height: 32px;
	border: 1px solid var(--amadeus-border);
	border-radius: 999px;
	background: #fff;
	color: var(--amadeus-primary);
	cursor: pointer;
	flex-shrink: 0;
}

.amadeus-flygo-summary-edit svg {
	display: block;
	width: 16px;
	height: 16px;
	flex-shrink: 0;
	pointer-events: none;
}

.amadeus-flygo-summary-route-block {
	display: flex;
	align-items: center;
	gap: 14px;
	min-width: 0;
	justify-content: space-evenly;
}

.amadeus-flygo-summary-airport {
	display: flex;
	flex-direction: column;
	gap: 2px;
	min-width: 90px;
}

.amadeus-flygo-summary-code {
	font-size: 28px;
	line-height: 1;
	letter-spacing: 0.02em;
	color: var(--amadeus-secondary);
}

.amadeus-flygo-summary-city {
	font-size: 13px;
	color: var(--amadeus-muted);
	font-weight: 600;
}

.amadeus-flygo-summary-swap {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 34px;
	height: 34px;
	border-radius: 999px;
	border: 1px solid var(--amadeus-border);
	background: #fff;
	color: var(--amadeus-primary);
	flex-shrink: 0;
}

.amadeus-flygo-summary-date-block {
	display: flex;
	gap: 18px;
	min-width: 0;
	justify-content: space-around;
}

.amadeus-flygo-summary-date {
	display: flex;
	flex-direction: column;
	gap: 2px;
	min-width: 120px;
}

.amadeus-flygo-summary-date strong {
	font-size: 15px;
	color: var(--amadeus-secondary);
}

.amadeus-flygo-summary-date span:last-child {
	font-size: 12px;
	color: var(--amadeus-muted);
	font-weight: 600;
}

.amadeus-flygo-value-row {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 10px;
	padding: 0 16px 12px;
	margin-top: 10px;
}

.amadeus-flygo-value-item {
	display: flex;
	align-items: center;
	gap: 8px;
	background: #fff7ed;
	border: 1px solid #fed7aa;
	border-radius: 10px;
	padding: 10px 12px;
	font-size: 12px;
	font-weight: 700;
	color: var(--amadeus-secondary);
}

.amadeus-flygo-value-item svg {
	color: var(--amadeus-primary);
	flex-shrink: 0;
}

.amadeus-flygo-offer--roundtrip .amadeus-flygo-offer-body {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 36px minmax(0, 1fr) 180px;
	grid-template-areas: "outbound divider inbound price";
	gap: 0 16px;
	align-items: stretch;
}

.amadeus-flygo-offer-leg {
	display: flex;
	flex-direction: column;
	gap: 10px;
	min-width: 0;
}

.amadeus-flygo-offer--roundtrip .amadeus-flygo-offer-leg {
	height: 100%;
}

.amadeus-flygo-offer--roundtrip .amadeus-flygo-offer-leg-footer {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px 10px;
	margin-top: auto;
}

.amadeus-flygo-offer-leg-label {
	font-size: 11px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	color: var(--amadeus-muted);
}

.amadeus-flygo-offer-leg-head {
	display: flex;
	align-items: center;
	gap: 10px;
}

.amadeus-flygo-offer-leg-airline {
	display: flex;
	flex-direction: column;
	gap: 2px;
	min-width: 0;
}

.amadeus-flygo-offer-leg-airline strong {
	font-size: 14px;
	color: var(--amadeus-secondary);
}

.amadeus-flygo-offer-leg-airline span {
	font-size: 12px;
	color: var(--amadeus-muted);
	font-weight: 600;
}

.amadeus-flygo-offer-divider {
	grid-area: divider;
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--amadeus-muted);
	border-left: 1px dashed var(--amadeus-border);
	border-right: 1px dashed var(--amadeus-border);
}

.amadeus-flygo-offer--roundtrip .amadeus-flygo-offer-leg:first-child {
	grid-area: outbound;
}

.amadeus-flygo-offer--roundtrip .amadeus-flygo-offer-leg:nth-child(3) {
	grid-area: inbound;
}

.amadeus-flygo-offer--roundtrip .amadeus-flygo-offer-price {
	grid-area: price;
	border-left: 1px solid var(--amadeus-border);
	padding-left: 16px;
}

.amadeus-flygo-offer--roundtrip .amadeus-flygo-offer-route {
	gap: 8px;
}

.amadeus-flygo-offer--roundtrip .amadeus-flygo-offer-baggage {
	margin-top: 2px;
}

.amadeus-flygo-offer--roundtrip .amadeus-flygo-offer-amenities {
	margin-top: 0;
}

.amadeus-flygo-itinerary-groups {
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.amadeus-flygo-itinerary-group-label {
	font-size: 11px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	color: var(--amadeus-muted);
	margin-bottom: 10px;
}

.amadeus-flygo-time-slots--grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 8px;
}

.amadeus-flygo-insights {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 12px;
	padding: 0 16px 16px;
}

.amadeus-flygo-insight-card {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	background: #fff;
	border: 1px solid var(--amadeus-border);
	border-radius: 12px;
	padding: 14px 16px;
	min-height: 84px;
}

.amadeus-flygo-insight-card strong {
	display: block;
	font-size: 14px;
	color: var(--amadeus-secondary);
	margin-bottom: 4px;
}

.amadeus-flygo-insight-card p {
	margin: 0;
	font-size: 12px;
	color: var(--amadeus-muted);
	font-weight: 600;
}

.amadeus-flygo-view-calendar {
	border-radius: 999px !important;
	padding: 8px 14px !important;
	font-size: 12px !important;
	font-weight: 700 !important;
	white-space: nowrap;
}

.amadeus-flygo-trend-badge {
	background: #fef3c7;
	color: #b45309;
	font-size: 11px;
	font-weight: 800;
	padding: 4px 10px;
	border-radius: 999px;
	text-transform: uppercase;
}

.amadeus-flygo-trust-bar--footer {
	margin-top: 18px;
}

.amadeus-flygo-mobile-hero,
.amadeus-flygo-mobile-dock,
.amadeus-flygo-filter-backdrop,
.amadeus-flygo-results-section-title {
	display: none;
}

.amadeus-flygo-filters-head-actions {
	display: flex;
	align-items: center;
	gap: 10px;
}

@media (max-width: 1100px) {
	.amadeus-flygo-summary-bar--rt {
		grid-template-columns: 1fr 1fr;
	}

	.amadeus-flygo-summary-trip {
		grid-column: 1 / -1;
		border-right: 0;
		border-bottom: 1px solid var(--amadeus-border);
		padding: 0 0 14px;
	}

	.amadeus-flygo-summary-route-block {
		grid-column: 1 / -1;
	}

	.amadeus-flygo-summary-date-block {
		flex-wrap: wrap;
	}

	.amadeus-flygo-summary-cta {
		grid-column: 1 / -1;
		flex-direction: row;
	}

	.amadeus-flygo-offer--roundtrip .amadeus-flygo-offer-body {
		grid-template-columns: 1fr;
		grid-template-areas:
			"outbound"
			"divider"
			"inbound"
			"price";
	}

	.amadeus-flygo-offer-divider {
		border: 0;
		padding: 4px 0;
	}

	.amadeus-flygo-offer--roundtrip .amadeus-flygo-offer-price {
		border-left: 0;
		border-top: 1px solid var(--amadeus-border);
		padding: 14px 0 0;
		text-align: left;
	}

	.amadeus-flygo-value-row,
	.amadeus-flygo-insights {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 768px) {
	.amadeus-flygo-summary-bar--rt {
		grid-template-columns: 1fr;
	}
}

/* Mobile results UI — matches FlyGo app mockup */
@media (max-width: 768px) {
	.amadeus-flights-results {
		position: relative;
		max-width: none;
		margin: 0;
		padding: 0 0 calc(88px + env(safe-area-inset-bottom, 0px));
		background: #f3f4f6;
		overflow-x: hidden;
	}

	.amadeus-flygo-mobile-hero {
		display: block;
		position: relative;
		height: 148px;
		margin: 0;
		background:
			radial-gradient(circle at 20% 120%, rgba(255, 255, 255, 0.18) 0, transparent 42%),
			radial-gradient(circle at 80% -20%, rgba(255, 255, 255, 0.14) 0, transparent 35%),
			linear-gradient(135deg, #ff6a00 0%, #ff8534 45%, #ff6a00 100%);
	}

	.amadeus-flygo-mobile-hero::after {
		content: "";
		position: absolute;
		right: 18px;
		top: 28px;
		width: 88px;
		height: 88px;
		background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64' fill='none'%3E%3Cpath d='M32 8l8 16h18l-14 11 5 18-17-11-17 11 5-18-14-11h18z' fill='rgba(255,255,255,0.18)'/%3E%3C/svg%3E") center/contain no-repeat;
		opacity: 0.9;
		pointer-events: none;
	}

	.amadeus-flights-results .amadeus-flygo-top {
		position: relative;
		z-index: 2;
		margin: -92px 10px 8px;
	}

	.amadeus-flygo-summary-bar,
	.amadeus-flygo-summary-bar--rt {
		display: flex;
		flex-direction: column;
		gap: 14px;
		padding: 16px;
		border: 0;
		border-radius: 18px;
		box-shadow: 0 16px 40px rgba(15, 23, 42, 0.14);
	}

	.amadeus-flygo-summary-trip {
		width: 100%;
		min-width: 0;
		padding: 0;
		border: 0;
		justify-content: space-between;
	}

	.amadeus-flygo-summary-route-block {
		flex-direction: row;
		align-items: center;
		justify-content: space-between;
		gap: 10px;
	}

	.amadeus-flygo-summary-airport {
		flex: 1;
		min-width: 0;
		text-align: center;
	}

	.amadeus-flygo-summary-label {
		font-size: 10px;
		font-weight: 700;
		text-transform: uppercase;
		letter-spacing: 0.04em;
		color: var(--amadeus-muted);
	}

	.amadeus-flygo-summary-code {
		font-size: 34px;
		font-weight: 800;
		line-height: 1.05;
	}

	.amadeus-flygo-summary-city {
		font-size: 12px;
	}

	.amadeus-flygo-summary-swap {
		width: 42px;
		height: 42px;
		transform: none;
		border: 0;
		background: var(--amadeus-primary);
		color: #fff;
		box-shadow: 0 8px 18px rgba(255, 106, 0, 0.28);
	}

	.amadeus-flygo-summary-date-block {
		display: grid;
		/* grid-template-columns: 1fr 1fr; */
		grid-template-columns: repeat(auto-fit, minmax(0, 1fr));
		gap: 12px;
		width: 100%;
	}

	.amadeus-flygo-summary-date {
		min-width: 0;
		padding: 10px 12px;
		border-radius: 12px;
		background: #f9fafb;
		border: 1px solid var(--amadeus-border);
	}

	.amadeus-flygo-summary-cta {
		width: 100%;
		min-width: 0;
		gap: 10px;
	}

	.amadeus-flygo-modify-btn {
		width: 100%;
		min-height: 48px;
		border-radius: 12px;
		font-size: 15px;
		font-weight: 700;
	}

	.amadeus-flygo-advanced-toggle {
		width: 100%;
		padding: 8px 0 0;
		font-size: 14px;
	}

	.amadeus-flygo-advanced-panel {
		left: 0;
		right: 0;
		width: 100%;
		max-width: 100%;
		box-sizing: border-box;
		border-radius: 16px;
		padding: 16px;
	}

	.amadeus-flygo-advanced-grid {
		grid-template-columns: 1fr 1fr;
	}

	.amadeus-flygo-advanced-grid .amadeus-autocomplete-wrap {
		min-width: 0;
	}

	.amadeus-flygo-advanced-panel:has(.amadeus-flygo-modify-close) .amadeus-flygo-advanced-grid {
		padding-right: 0;
	}

	.amadeus-flygo-layout,
	.amadeus-flygo-layout--results {
		display: block;
		padding: 0 10px;
	}

	.amadeus-flygo-main {
		margin: 0;
	}

	.amadeus-flygo-results-shell {
		padding: 0;
		gap: 0;
	}

	.amadeus-flygo-sidebar {
		position: fixed;
		left: 0;
		right: 0;
		bottom: 0;
		z-index: 1001;
		max-height: min(82vh, 720px);
		overflow-y: auto;
		transform: translateY(110%);
		transition: transform 0.28s ease;
		border-radius: 18px 18px 0 0;
		box-shadow: 0 -12px 40px rgba(15, 23, 42, 0.18);
		padding-bottom: env(safe-area-inset-bottom, 0px);
	}

	.amadeus-flygo-sidebar.is-open {
		transform: translateY(0);
	}

	.amadeus-flygo-panel--filters {
		border: 0;
		border-radius: 18px 18px 0 0;
		padding-top: 10px;
	}

	.amadeus-flygo-filters-head {
		position: sticky;
		top: 0;
		z-index: 2;
		display: flex;
		align-items: center;
		justify-content: space-between;
		padding-bottom: 12px;
		margin-bottom: 4px;
		background: #fff;
		border-bottom: 1px solid var(--amadeus-border);
	}

	.amadeus-flygo-filters-close {
		display: inline-flex;
	}

	.amadeus-flygo-filter-backdrop {
		display: block;
		position: fixed;
		inset: 0;
		z-index: 1000;
		border: 0;
		padding: 0;
		background: rgba(15, 23, 42, 0.45);
		opacity: 0;
		pointer-events: none;
		transition: opacity 0.24s ease;
	}

	.amadeus-flygo-filter-backdrop.is-open {
		opacity: 1;
		pointer-events: auto;
	}

	.amadeus-flygo-filter-backdrop[hidden] {
		display: block !important;
	}

	.amadeus-flygo-filter-backdrop[hidden]:not(.is-open) {
		opacity: 0;
		pointer-events: none;
	}

	.amadeus-flygo-main,
	.amadeus-flygo-results-shell {
		background: transparent;
		border: 0;
		box-shadow: none;
		overflow: visible;
		padding: 7px 5px;
	}

	.amadeus-flygo-results-tabs {
		display: flex;
		gap: 6px;
		margin: 0 0 8px;
		padding: 4px;
		border: 0;
		background: #e5e7eb;
		border-radius: 999px;
	}

	.amadeus-flygo-results-tab {
		flex: 1;
		margin: 0;
		padding: 11px 12px;
		border: 0;
		border-radius: 999px;
		border-bottom: 0;
		background: transparent;
		color: #6b7280;
		font-size: 14px;
	}

	.amadeus-flygo-results-tab.is-active {
		background: var(--amadeus-primary);
		color: #fff;
		box-shadow: 0 6px 16px rgba(255, 106, 0, 0.24);
	}

	.amadeus-flygo-results-head {
		flex-direction: row;
		align-items: center;
		justify-content: space-between;
		gap: 10px;
		padding: 0 0 8px;
		margin: 0;
		border: 0;
		background: transparent;
		min-width: 0;
		width: 100%;
		box-sizing: border-box;
	}

	.amadeus-flygo-results-head-copy {
		flex: 1 1 auto;
		min-width: 0;
		padding-right: 8px;
	}

	.amadeus-flygo-results-head h2,
	.amadeus-flygo-results-date {
		display: none;
	}

	.amadeus-flygo-results-head p {
		margin: 0;
	}

	.amadeus-flygo-results-count {
		display: block;
		margin: 0;
		padding: 0;
		border: 0;
		font-size: 18px;
		font-weight: 800;
		color: var(--amadeus-secondary);
		line-height: 1.2;
	}

	.amadeus-flygo-results-sort {
		flex: 0 1 auto;
		min-width: 0;
		max-width: min(48%, 160px);
	}

	.amadeus-flygo-results-sort label {
		position: absolute;
		width: 1px;
		height: 1px;
		overflow: hidden;
		clip: rect(0, 0, 0, 0);
	}

	.amadeus-flygo-results-sort select {
		width: 100%;
		min-width: 0;
		max-width: 100%;
		padding: 10px 34px 10px 14px;
		border-radius: 999px;
		font-size: 13px;
		font-weight: 700;
		background: #fff;
		box-sizing: border-box;
	}

	.amadeus-flygo-value-row {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 8px;
		padding: 0;
		margin: 0 0 8px;
	}

	.amadeus-flygo-value-item {
		padding: 9px 10px;
		font-size: 11px;
		line-height: 1.25;
		border-radius: 12px;
	}

	.amadeus-flygo-results-section-title {
		display: flex;
		align-items: center;
		gap: 8px;
		margin: 0 0 8px;
		padding: 0;
		font-size: 15px;
		font-weight: 800;
		color: var(--amadeus-secondary);
		margin: 18px 0px 21px;
	}

	.amadeus-flygo-results-section-title svg {
		color: var(--amadeus-primary);
		flex-shrink: 0;
	}

	.amadeus-flygo-results-list {
		padding: 0;
	}

	.amadeus-flygo-offer {
		padding: 12px 14px 14px;
		margin-bottom: 10px;
		border-radius: 16px;
		box-shadow: 0 8px 24px rgba(15, 23, 42, 0.06);
	}

	.amadeus-flygo-offer--badged {
		padding-top: 20px;
	}

	.amadeus-flygo-offer-badge {
		left: 14px;
		font-size: 10px;
	}

	.amadeus-flygo-offer-body {
		grid-template-columns: 1fr;
		grid-template-areas:
			"airline"
			"route"
			"price";
		gap: 10px;
	}

	.amadeus-flygo-offer-airline {
		padding-bottom: 8px;
		margin-bottom: 0;
		border-bottom: 1px solid #f3f4f6;
	}

	.amadeus-flygo-offer-route {
		grid-template-columns: 72px minmax(0, 1fr) 72px;
		gap: 6px;
	}

	.amadeus-flygo-time strong {
		font-size: 21px;
	}

	.amadeus-flygo-offer-baggage {
		padding-left: 0;
		margin-top: 0;
	}

	.amadeus-flygo-offer-price {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 12px;
		flex-wrap: nowrap;
		text-align: left;
		border-top: 1px solid var(--amadeus-border);
		padding-top: 10px;
		margin-top: 0;
	}

	.amadeus-flygo-offer-price-left {
		flex: 1 1 auto;
		min-width: 0;
	}

	.amadeus-flygo-offer-price .amadeus-price {
		font-size: 24px;
		font-weight: 800;
		line-height: 1.1;
	}

	.amadeus-flygo-offer-price .amadeus-price-plain,
	.amadeus-flygo-offer-price .amadeus-price {
		color: var(--amadeus-primary);
	}

	.amadeus-flygo-per-person {
		width: auto;
		margin: 2px 0 0;
		font-size: 11px;
	}

	.amadeus-flygo-offer-actions {
		flex: 0 0 auto;
		justify-content: flex-end;
		min-width: 0;
		margin: 0;
	}

	.amadeus-flygo-offer-toggle {
		display: none;
	}

	.amadeus-flygo-offer-price .amadeus-btn {
		min-width: 108px;
		min-height: 44px;
		padding: 10px 18px;
		border-radius: 10px;
		font-weight: 700;
		white-space: nowrap;
	}

	.amadeus-flygo-offer--roundtrip .amadeus-flygo-offer-body {
		grid-template-columns: 1fr;
		grid-template-areas:
			"outbound"
			"divider"
			"inbound"
			"price";
		gap: 12px;
	}

	.amadeus-flygo-offer--roundtrip .amadeus-flygo-offer-leg {
		padding: 12px;
		border-radius: 12px;
		background: #fafafa;
		border: 1px solid #f3f4f6;
	}

	.amadeus-flygo-offer-divider {
		border: 0;
		padding: 0;
	}

	.amadeus-flygo-offer-divider svg {
		transform: rotate(90deg);
	}

	.amadeus-flygo-offer--roundtrip .amadeus-flygo-offer-price {
		border-left: 0;
		border-top: 1px solid var(--amadeus-border);
		padding: 10px 0 0;
		margin-top: 0;
	}

	.amadeus-flygo-insights {
		grid-template-columns: 1fr;
		padding: 8px 0 0;
		gap: 8px;
		margin-top: 4px;
	}

	.amadeus-flygo-insight-card {
		min-height: 0;
		padding: 12px 14px;
	}

	.amadeus-flygo-trust-bar,
	.amadeus-flygo-trust-bar--footer {
		display: none;
	}

	.amadeus-flygo-mobile-dock {
		display: flex;
		position: fixed;
		left: 0;
		right: 0;
		bottom: 0;
		z-index: 900;
		gap: 8px;
		padding: 10px 12px calc(10px + env(safe-area-inset-bottom, 0px));
		background: rgba(255, 255, 255, 0.96);
		border-top: 1px solid var(--amadeus-border);
		box-shadow: 0 -8px 28px rgba(15, 23, 42, 0.08);
		backdrop-filter: blur(8px);
	}

	.amadeus-flygo-dock-btn {
		flex: 1;
		display: inline-flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		gap: 3px;
		min-height: 52px;
		padding: 7px 8px;
		border: 1px solid var(--amadeus-border);
		border-radius: 12px;
		background: #fff;
		color: var(--amadeus-secondary);
		font-size: 11px;
		font-weight: 700;
		cursor: pointer;
	}

	.amadeus-flygo-dock-btn svg {
		color: var(--amadeus-primary);
	}

	.amadeus-flygo-dock-btn:active {
		transform: scale(0.98);
		background: #fff7ed;
		border-color: #fed7aa;
	}

	body.amadeus-filters-open {
		overflow: hidden;
	}
}

@media (max-width: 419px) {
	.amadeus-flygo-advanced-grid {
		grid-template-columns: 1fr;
	}
}

@media (min-width: 420px) {
	.amadeus-flygo-offer-center {
		flex-direction: row;
		flex-wrap: wrap;
		align-items: center;
		column-gap: 10px;
		row-gap: 8px;
	}

	.amadeus-flygo-offer--roundtrip .amadeus-flygo-offer-leg-footer {
		flex-wrap: nowrap;
		column-gap: 10px;
	}

	.amadeus-flygo-offer--roundtrip .amadeus-flygo-offer-leg-footer .amadeus-flygo-offer-baggage {
		flex: 1 1 auto;
		min-width: 0;
		margin-top: 0;
	}

	.amadeus-flygo-offer--roundtrip .amadeus-flygo-offer-leg-footer .amadeus-flygo-offer-amenities {
		flex: 0 0 auto;
		margin: 0 0 0 auto;
		justify-content: flex-end;
		flex-wrap: nowrap;
	}

	.amadeus-flygo-offer-route,
	.amadeus-flygo-offer-leg-label,
	.amadeus-flygo-offer-leg-head {
		flex: 1 1 100%;
		width: 100%;
	}

	.amadeus-flygo-offer-baggage {
		flex: 1 1 auto;
		min-width: 0;
		margin-top: 0;
	}

	.amadeus-flygo-offer-amenities {
		flex: 0 0 auto;
		margin: 0 0 0 auto;
		justify-content: flex-end;
		flex-wrap: nowrap;
	}
}

/* Session expiry modal */
.amadeus-session-expired-modal {
	position: fixed;
	inset: 0;
	z-index: 100050;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 20px;
}

.amadeus-session-expired-modal[hidden] {
	display: none !important;
}

.amadeus-session-expired-modal.is-visible {
	display: flex !important;
}

.amadeus-session-expired-backdrop {
	position: absolute;
	inset: 0;
	background: rgba(15, 23, 42, 0.55);
	backdrop-filter: blur(2px);
}

.amadeus-session-expired-card {
	position: relative;
	z-index: 1;
	width: min(100%, 420px);
	background: #fff;
	border-radius: 16px;
	padding: 28px 24px 24px;
	text-align: center;
	box-shadow: 0 24px 48px rgba(15, 23, 42, 0.18);
}

.amadeus-session-expired-icon {
	width: 56px;
	height: 56px;
	margin: 0 auto 14px;
	border-radius: 50%;
	background: rgba(255, 106, 0, 0.1);
	color: var(--amadeus-primary, #ff6a00);
	display: flex;
	align-items: center;
	justify-content: center;
}

.amadeus-session-expired-card h2 {
	margin: 0 0 10px;
	font-size: 22px;
	line-height: 1.25;
	color: #111827;
}

.amadeus-session-expired-message {
	margin: 0 0 20px;
	font-size: 14px;
	line-height: 1.5;
	color: #6b7280;
}

.amadeus-session-expired-refresh {
	min-width: 180px;
	background: var(--amadeus-primary, #ff6a00) !important;
	border-color: var(--amadeus-primary, #ff6a00) !important;
}

.amadeus-session-expired-refresh.is-loading {
	opacity: 0.7;
	pointer-events: none;
}

body.amadeus-session-locked {
	overflow: hidden;
}
