/**
 * GDC Zone 7: Everything Included
 * S7 §8 + S13 §1: Dark theme, token-driven, mobile-first
 */

/* ═══════════════════════════════════════
   INCLUSION GRID
   ═══════════════════════════════════════ */

.gdc-inclusions__inner {
	display: flex;
	flex-direction: column;
	gap: var(--gdc-space-6, 32px);
}

.gdc-inclusions {
	display: flex;
	flex-direction: column;
	gap: var(--gdc-space-4, 24px);
}

.gdc-inclusions__category-title {
	font-size: 1.25rem;
	font-weight: 600;
	color: var(--gdc-white, #fff);
	margin: 0 0 var(--gdc-space-2, 8px);
	text-transform: uppercase;
	letter-spacing: 0.04em;
	font-size: 0.8125rem;
}

.gdc-inclusions__list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: var(--gdc-space-2, 8px);
}

.gdc-inclusions__item {
	display: flex;
	align-items: flex-start;
	gap: var(--gdc-space-2, 8px);
}

.gdc-inclusions__check {
	flex-shrink: 0;
	color: var(--gdc-teal, #4DD4C0);
	margin-top: 2px;
}

.gdc-inclusions__label {
	font-size: 1rem;
	color: var(--gdc-white-muted, rgba(255, 255, 255, 0.7));
	line-height: 1.5;
}

.gdc-inclusions--minimal .gdc-inclusions__fallback {
	font-size: 1rem;
	color: var(--gdc-white-dim, rgba(255, 255, 255, 0.5));
	font-style: italic;
}

/* ═══════════════════════════════════════
   PREVIEW (COLLAPSED MOBILE)
   ═══════════════════════════════════════ */

.gdc-inclusions__preview {
	display: flex;
	flex-wrap: wrap;
	gap: var(--gdc-space-1, 6px) var(--gdc-space-2, 8px);
	align-items: center;
}

.gdc-inclusions__preview-tag {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	font-size: 0.8125rem;
	color: var(--gdc-white-muted, rgba(255, 255, 255, 0.7));
}

.gdc-inclusions__check-sm {
	color: var(--gdc-teal, #4DD4C0);
	flex-shrink: 0;
}

.gdc-inclusions__preview-more {
	font-size: 0.8125rem;
	color: var(--gdc-purple, #9B7FD4);
}

/* ═══════════════════════════════════════
   DIVEASSURE CALLOUT
   ═══════════════════════════════════════ */

.gdc-inclusions__insurance-callout {
	display: flex;
	gap: var(--gdc-space-3, 16px);
	padding: var(--gdc-space-4, 20px);
	background: var(--gdc-surface, #1C2430);
	border-radius: var(--gdc-radius-lg, 12px);
	border-left: 4px solid var(--gdc-teal, #4DD4C0);
}

.gdc-inclusions__insurance-icon {
	flex-shrink: 0;
	color: var(--gdc-teal, #4DD4C0);
}

.gdc-inclusions__insurance-title {
	font-size: 1.125rem;
	font-weight: 600;
	color: var(--gdc-white, #fff);
	margin: 0 0 var(--gdc-space-1, 6px);
}

.gdc-inclusions__insurance-text {
	font-size: 1rem;
	color: var(--gdc-white-muted, rgba(255, 255, 255, 0.7));
	margin: 0 0 var(--gdc-space-2, 8px);
	line-height: 1.5;
}

.gdc-inclusions__insurance-trigger {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	background: none;
	border: none;
	padding: 0;
	font-size: 0.875rem;
	color: var(--gdc-purple, #9B7FD4);
	cursor: pointer;
	font-family: inherit;
}

.gdc-inclusions__insurance-trigger:hover,
.gdc-inclusions__insurance-trigger:focus-visible {
	text-decoration: underline;
}

.gdc-inclusions__insurance-trigger:focus-visible {
	outline: 2px solid var(--gdc-teal, #4DD4C0);
	outline-offset: 2px;
	border-radius: 2px;
}

.gdc-inclusions__insurance-tooltip {
	margin-top: var(--gdc-space-2, 8px);
	padding: var(--gdc-space-3, 16px);
	background: var(--gdc-abyss, #141B24);
	border-radius: var(--gdc-radius-card, 8px);
	border: 1px solid rgba(255, 255, 255, 0.06);
}

.gdc-inclusions__insurance-tooltip p {
	font-size: 0.875rem;
	color: var(--gdc-white-dim, rgba(255, 255, 255, 0.5));
	line-height: 1.5;
	margin: 0;
}

/* ═══════════════════════════════════════
   WHAT'S NOT INCLUDED
   ═══════════════════════════════════════ */

.gdc-inclusions__excluded-title {
	font-size: 1.125rem;
	font-weight: 600;
	color: var(--gdc-white, #fff);
	margin: 0 0 var(--gdc-space-3, 12px);
}

.gdc-inclusions__excluded-list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: var(--gdc-space-2, 8px);
}

.gdc-inclusions__excluded-item {
	display: flex;
	align-items: flex-start;
	gap: var(--gdc-space-2, 8px);
}

.gdc-inclusions__x {
	flex-shrink: 0;
	color: var(--gdc-white-dim, rgba(255, 255, 255, 0.4));
	margin-top: 2px;
}

.gdc-inclusions__excluded-item span {
	font-size: 1rem;
	color: var(--gdc-white-dim, rgba(255, 255, 255, 0.5));
	line-height: 1.5;
}

/* ═══════════════════════════════════════
   DIY COST COMPARISON
   ═══════════════════════════════════════ */

.gdc-inclusions__comparison {
	background: var(--gdc-surface, #1C2430);
	border-radius: var(--gdc-radius-lg, 12px);
	padding: var(--gdc-space-4, 24px);
}

.gdc-inclusions__comparison-title {
	font-size: 1.125rem;
	font-weight: 600;
	color: var(--gdc-white, #fff);
	margin: 0 0 var(--gdc-space-3, 16px);
}

.gdc-inclusions__comparison-table {
	display: flex;
	flex-direction: column;
}

.gdc-inclusions__comparison-row {
	display: grid;
	grid-template-columns: 1fr auto auto;
	gap: var(--gdc-space-2, 8px);
	padding: var(--gdc-space-2, 8px) 0;
	align-items: baseline;
}

.gdc-inclusions__comparison-item {
	font-size: 1rem;
	color: var(--gdc-white-muted, rgba(255, 255, 255, 0.7));
}

.gdc-inclusions__comparison-detail {
	font-size: 0.875rem;
	color: var(--gdc-white-dim, rgba(255, 255, 255, 0.4));
	text-align: right;
}

.gdc-inclusions__comparison-cost {
	font-size: 1rem;
	font-weight: 600;
	color: var(--gdc-white, #fff);
	text-align: right;
	font-variant-numeric: tabular-nums;
	min-width: 70px;
}

.gdc-inclusions__comparison-divider {
	height: 1px;
	background: rgba(255, 255, 255, 0.08);
	margin: var(--gdc-space-1, 4px) 0;
}

/* S7 §8.7: DIY total — strikethrough anchor */
.gdc-inclusions__comparison-row--total .gdc-inclusions__comparison-item {
	font-size: 1.125rem;
	font-weight: 600;
	color: var(--gdc-white, #fff);
}

.gdc-inclusions__comparison-cost--strikethrough {
	font-size: 1.125rem;
	text-decoration: line-through;
	opacity: 0.6;
}

/* S7 §8.7: GDC price — teal highlight */
.gdc-inclusions__comparison-row--gdc .gdc-inclusions__comparison-item {
	font-size: 1.25rem;
	font-weight: 600;
	color: var(--gdc-white, #fff);
}

.gdc-inclusions__comparison-row--gdc .gdc-inclusions__comparison-detail {
	color: var(--gdc-white-muted, rgba(255, 255, 255, 0.7));
}

.gdc-inclusions__comparison-cost--highlight {
	font-size: 1.25rem;
	color: var(--gdc-teal, #4DD4C0);
}

.gdc-inclusions__comparison-note {
	font-size: 0.875rem;
	color: var(--gdc-white-dim, rgba(255, 255, 255, 0.4));
	margin: var(--gdc-space-3, 12px) 0 0;
	text-align: center;
}

/* ═══════════════════════════════════════
   RESPONSIVE — TABLET (2-col grid)
   ═══════════════════════════════════════ */

@media (min-width: 768px) {
	.gdc-inclusions {
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		gap: var(--gdc-space-5, 24px) var(--gdc-space-6, 32px);
	}

	.gdc-inclusions__comparison-row {
		grid-template-columns: 1fr 100px 90px;
	}
}

/* ═══════════════════════════════════════
   RESPONSIVE — DESKTOP (3-col grid)
   ═══════════════════════════════════════ */

@media (min-width: 1200px) {
	.gdc-inclusions {
		grid-template-columns: repeat(3, 1fr);
		gap: var(--gdc-space-6, 32px);
	}
}

/* ═══════════════════════════════════════
   SCROLL REVEAL
   ═══════════════════════════════════════ */

@media (prefers-reduced-motion: no-preference) {
	.gdc-inclusions,
	.gdc-inclusions__insurance-callout,
	.gdc-inclusions__excluded,
	.gdc-inclusions__comparison {
		opacity: 0;
		transform: translateY(var(--gdc-scroll-slide-distance, 20px));
		transition: opacity 0.4s ease-out, transform 0.4s ease-out;
	}

	.gdc-inclusions.gdc-visible,
	.gdc-inclusions__insurance-callout.gdc-visible,
	.gdc-inclusions__excluded.gdc-visible,
	.gdc-inclusions__comparison.gdc-visible {
		opacity: 1;
		transform: translateY(0);
	}
}

/* S13 §5: Reduced motion — no spatial animation */
@media (prefers-reduced-motion: reduce) {
	.gdc-inclusions,
	.gdc-inclusions__insurance-callout,
	.gdc-inclusions__excluded,
	.gdc-inclusions__comparison {
		opacity: 1;
		transform: none;
	}
}

/* ═══════════════════════════════════════
   MOBILE COMPARISON TABLE SCROLL
   ═══════════════════════════════════════ */

@media (max-width: 480px) {
	.gdc-inclusions__comparison-table {
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
	}

	.gdc-inclusions__comparison-row {
		min-width: 320px;
	}
}

.gdc-inclusions__insurance-link {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	margin-top: var(--gdc-space-2, 8px);
	font-size: 0.875rem;
	color: var(--gdc-teal, #4DD4C0);
	text-decoration: none;
}
.gdc-inclusions__insurance-link:hover,
.gdc-inclusions__insurance-link:focus-visible {
	text-decoration: underline;
}
