/* Kar pages: built on the Skiciyizbiz theme's colour tokens, with fallbacks for other themes. */

.skz-kar {
	max-width: 960px;
	margin: 0 auto;
	padding: 24px 0 48px;
	color: var(--color-text, inherit);
}

.skz-kar__card {
	margin: 0 0 20px;
	padding: 24px 28px;
	background-color: var(--color-bg-card, #fff);
	border: 1px solid var(--color-border, #e2e8f0);
	border-radius: var(--border-radius, 12px);
	box-shadow: 0 2px 8px var(--color-card-shadow, rgba(0, 0, 0, 0.08));
}

.skz-kar__card > :last-child {
	margin-bottom: 0;
}

.skz-kar h2 {
	margin: 0 0 16px;
	font-size: 1.4rem;
	color: var(--color-heading, inherit);
}

.skz-kar h3 {
	margin: 20px 0 6px;
	font-size: 1.05rem;
	color: var(--color-heading, inherit);
}

.skz-kar a {
	color: var(--color-snow, #38bdf8);
}

.skz-kar__crumbs {
	font-size: 0.875rem;
	color: var(--color-text-muted, #6b7280);
	margin-bottom: 12px;
}

.skz-kar__crumbs a {
	color: var(--color-text-secondary, inherit);
	text-decoration: none;
}

.skz-kar__head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 16px;
}

.skz-kar__head .entry-title {
	margin: 0 0 8px;
}

.skz-kar__lang {
	flex-shrink: 0;
	margin-top: 8px;
	padding: 4px 12px;
	border: 1px solid var(--color-border, #2d3548);
	border-radius: 999px;
	font-size: 0.875rem;
	text-decoration: none;
}

.skz-kar__lead {
	font-size: 1.125rem;
	line-height: 1.6;
	color: var(--color-text, inherit);
}

.skz-kar__lead strong {
	color: var(--color-snow, #38bdf8);
}

.skz-kar__stats {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 12px;
	margin: 24px 0 0;
}

.skz-kar__stat {
	margin: 0;
	padding: 16px;
	background: var(--color-bg-tertiary, #f0f4f8);
	border-radius: var(--border-radius-sm, 8px);
}

.skz-kar__stat dt {
	font-size: 0.8125rem;
	color: var(--color-text-secondary, #9ba3b5);
}

.skz-kar__stat dd {
	margin: 4px 0 0;
	font-size: 1.5rem;
	font-weight: 700;
	color: var(--color-heading, inherit);
	font-variant-numeric: tabular-nums;
}

.skz-kar__stat--main dd {
	font-size: 2rem;
	color: var(--color-snow, #38bdf8);
}

.skz-kar__stat--small dd {
	font-size: 1rem;
	font-weight: 600;
}

.skz-kar__cta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 12px 24px;
	margin: 0 0 20px;
	padding: 20px 28px;
	background: var(--color-accent-glow, rgba(6, 182, 212, 0.15));
	border: 1px solid var(--color-accent, #06b6d4);
	border-radius: var(--border-radius, 12px);
}

.skz-kar__cta p {
	margin: 4px 0 0;
	color: var(--color-text-secondary, inherit);
}

.skz-kar__stores {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.skz-kar .skz-kar__store {
	display: inline-block;
	padding: 8px 16px;
	background: var(--color-primary, #3b82f6);
	color: #fff;
	border-radius: var(--border-radius-sm, 8px);
	font-weight: 600;
	text-decoration: none;
}

.skz-kar .skz-kar__store:hover {
	background: var(--color-primary-hover, #2563eb);
}

.skz-kar__table-wrap {
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}

.skz-kar__table {
	width: 100%;
	border-collapse: collapse;
	font-size: 0.9375rem;
}

.skz-kar__table th,
.skz-kar__table td {
	padding: 10px 12px;
	border-bottom: 1px solid var(--color-border, #2d3548);
	text-align: left;
	white-space: nowrap;
}

.skz-kar__table thead th {
	font-size: 0.8125rem;
	font-weight: 600;
	color: var(--color-text-secondary, #9ba3b5);
}

.skz-kar__table tbody th {
	font-weight: 600;
}

.skz-kar__table .skz-kar__num {
	text-align: right;
	font-variant-numeric: tabular-nums;
}

.skz-kar__table .skz-kar__depth {
	font-weight: 700;
	color: var(--color-snow, #38bdf8);
}

.skz-kar__snowday {
	background: var(--color-accent-glow, rgba(6, 182, 212, 0.15));
}

.skz-kar__muted,
.skz-kar__sources {
	color: var(--color-text-muted, #6b7280);
	font-size: 0.875rem;
}

.skz-kar__sources {
	margin-top: 8px;
	padding: 0 4px;
}

.skz-kar__hotels {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
	gap: 12px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.skz-kar__hotels a {
	display: block;
	height: 100%;
	background: var(--color-bg-tertiary, #f0f4f8);
	border: 1px solid var(--color-border, #2d3548);
	border-radius: var(--border-radius, 12px);
	overflow: hidden;
	color: var(--color-text, inherit);
	text-decoration: none;
}

.skz-kar__hotels img {
	display: block;
	width: 100%;
	aspect-ratio: 16 / 10;
	object-fit: cover;
}

.skz-kar__hotels span {
	display: block;
	padding: 10px 12px;
	font-weight: 600;
	font-size: 0.9375rem;
}

.skz-kar__hotel-list,
.skz-kar__cams {
	padding-left: 1.2em;
}

.skz-kar__stars {
	color: #f59e0b;
	font-size: 0.8125rem;
}

.skz-kar__live {
	color: var(--color-danger, #ef4444);
}

.skz-kar__links {
	columns: 2;
	column-gap: 24px;
	padding-left: 1.2em;
}

.skz-kar__links li {
	break-inside: avoid;
	margin-bottom: 4px;
}

.skz-kar__faq p {
	margin-top: 0;
	color: var(--color-text-secondary, inherit);
}

@media (max-width: 600px) {
	.skz-kar__head {
		flex-direction: column;
		gap: 0;
	}

	.skz-kar__lang {
		margin: 0 0 8px;
	}

	.skz-kar__links {
		columns: 1;
	}

	.skz-kar__card,
	.skz-kar__cta {
		padding: 18px 16px;
	}

	.skz-kar__stats {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.skz-kar__table th,
	.skz-kar__table td {
		padding: 8px;
	}

	/* The forecast fits the screen: day names wrap and the wind column goes. */
	.skz-kar__table--forecast th,
	.skz-kar__table--forecast td {
		white-space: normal;
	}

	.skz-kar__table--forecast th:nth-child(5),
	.skz-kar__table--forecast td:nth-child(5) {
		display: none;
	}
}

.skz-kar__table tbody tr:last-child th,
.skz-kar__table tbody tr:last-child td {
	border-bottom: 0;
}

/* Same column widths in every country table of the overview. */
.skz-kar__table--resorts {
	table-layout: fixed;
	min-width: 640px;
}

.skz-kar__table--resorts th:nth-child(1) {
	width: 24%;
}

.skz-kar__table--resorts th:nth-child(2) {
	width: 20%;
}

.skz-kar__table--resorts th,
.skz-kar__table--resorts td {
	overflow: hidden;
	text-overflow: ellipsis;
}

.skz-kar__table--resorts thead th {
	white-space: normal;
	vertical-align: bottom;
}
