/**
 * Cart, Checkout — phase 1 (no payment gateway, no fake items).
 * Self-contained: does not depend on other pages' CSS.
 */

.tbp-cart-checkout {
	background: var(--tbp-color-surface-soft);
	color: var(--tbp-color-text);
	min-height: 70vh;
	padding-block: clamp(2.5rem, 6vw, 5rem);
}

.tbp-cart-checkout__content {
	display: grid;
	gap: 1.5rem;
}

.tbp-cart-empty {
	background: var(--tbp-color-surface);
	border: 1px dashed var(--tbp-color-border-strong);
	border-radius: var(--tbp-radius-xl);
	box-shadow: var(--tbp-shadow-sm);
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 1rem;
	padding: clamp(2.5rem, 6vw, 4rem);
	text-align: center;
}

.tbp-cart-empty__icon { color: var(--tbp-color-primary); font-size: 2.5rem; }
.tbp-cart-empty h1 { font-size: clamp(1.6rem, 4vw, 2.3rem); margin: 0; }
.tbp-cart-empty p { color: var(--tbp-color-text-muted); margin: 0; max-width: 640px; }

.tbp-cart-protection {
	background: linear-gradient(145deg, var(--tbp-color-navy-900), var(--tbp-color-navy-800));
	border-radius: var(--tbp-radius-xl);
	color: #dce5ef;
	display: flex;
	align-items: center;
	gap: 1rem;
	padding: clamp(1.5rem, 4vw, 2.25rem);
}
.tbp-cart-protection > span { font-size: 2rem; }
.tbp-cart-protection p { color: #dce5ef; flex: 1; margin: 0; }
.tbp-cart-protection a { color: #ffd968; font-weight: 700; text-decoration: none; white-space: nowrap; }

html[data-theme="dark"] .tbp-cart-empty { background: var(--tbp-color-surface-soft); }

@media (max-width: 760px) {
	
	.tbp-cart-protection { flex-direction: column; text-align: center; }
}
