/*! TablePress Responsive (Free) v2.0.4 | GPL-2.0-or-later */

/* ---------- Tokens (light) ---------- */
.tprf-wrap {
	--tprf-bg: #fff;
	--tprf-fg: #1f2328;
	--tprf-muted: #57606a;
	--tprf-border: #d0d7de;
	--tprf-row-alt: #f6f8fa;
	--tprf-accent: #0969da;
	--tprf-focus: #0969da;
	--tprf-shadow: 0 1px 2px rgba(0,0,0,.06), 0 4px 12px rgba(0,0,0,.06);
	--tprf-radius: 8px;
	--tprf-pad: .75rem;
	--tprf-tx: .2s ease;
	box-sizing: border-box;
	color: var(--tprf-fg);
	font: inherit;
}
.tprf-wrap *, .tprf-wrap *::before, .tprf-wrap *::after { box-sizing: border-box; }

/* ---------- Dark mode (auto + explicit) ---------- */
@media (prefers-color-scheme: dark) {
	.tprf-wrap:not([data-tprf-theme="light"]) {
		--tprf-bg: #0d1117;
		--tprf-fg: #e6edf3;
		--tprf-muted: #8b949e;
		--tprf-border: #30363d;
		--tprf-row-alt: #161b22;
		--tprf-accent: #2f81f7;
		--tprf-focus: #2f81f7;
	}
}
.tprf-wrap[data-tprf-theme="dark"] {
	--tprf-bg: #0d1117;
	--tprf-fg: #e6edf3;
	--tprf-muted: #8b949e;
	--tprf-border: #30363d;
	--tprf-row-alt: #161b22;
	--tprf-accent: #2f81f7;
	--tprf-focus: #2f81f7;
}

/* ---------- Focus ring ---------- */
.tprf-wrap:focus { outline: none; }
.tprf-wrap:focus-visible,
.tprf-wrap [tabindex]:focus-visible,
.tprf-wrap button:focus-visible {
	outline: 2px solid var(--tprf-focus);
	outline-offset: 2px;
	border-radius: 4px;
}

/* ---------- Scroll mode ---------- */
.tprf-wrap-scroll {
	overflow: hidden;
	border-radius: var(--tprf-radius);
}
.tprf-wrap-scroll .tprf-scroller {
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
	scrollbar-width: thin;
	cursor: grab;
}
.tprf-wrap-scroll .tprf-scroller.is-dragging { cursor: grabbing; user-select: none; }
.tprf-wrap-scroll table { min-width: 100%; }

/* Sticky first column for scroll mode */
.tprf-wrap-scroll.tprf-sticky-col table th:first-child,
.tprf-wrap-scroll.tprf-sticky-col table td:first-child {
	position: sticky;
	left: 0;
	background: var(--tprf-bg);
	z-index: 2;
	box-shadow: 1px 0 0 0 var(--tprf-border);
}

/* ---------- Stack mode (cards) ---------- */
.tprf-wrap-stack[data-tprf-active="1"] table,
.tprf-wrap-stack[data-tprf-active="1"] table thead,
.tprf-wrap-stack[data-tprf-active="1"] table tbody,
.tprf-wrap-stack[data-tprf-active="1"] table tr,
.tprf-wrap-stack[data-tprf-active="1"] table th,
.tprf-wrap-stack[data-tprf-active="1"] table td {
	display: block;
	width: auto;
}
.tprf-wrap-stack[data-tprf-active="1"] table thead { display: none; }
.tprf-wrap-stack[data-tprf-active="1"] table tr {
	margin: 0 0 1rem;
	padding: var(--tprf-pad);
	background: var(--tprf-bg);
	border: 1px solid var(--tprf-border);
	border-radius: var(--tprf-radius);
	box-shadow: var(--tprf-shadow);
}
.tprf-wrap-stack[data-tprf-active="1"] table td {
	display: flex;
	gap: 1rem;
	justify-content: space-between;
	padding: .35rem 0;
	border: 0;
	border-bottom: 1px dashed var(--tprf-border);
	text-align: right;
}
.tprf-wrap-stack[data-tprf-active="1"] table td:last-child { border-bottom: 0; }
.tprf-wrap-stack[data-tprf-active="1"] table td::before {
	content: attr(data-tprf-label);
	font-weight: 600;
	color: var(--tprf-muted);
	text-align: left;
	margin-right: 1rem;
}
.tprf-wrap-stack[data-tprf-active="1"] table td[data-tprf-hidden="1"] { display: none; }

/* ---------- Flip mode (transposed) ---------- */
.tprf-wrap-flip[data-tprf-active="1"] .tprf-flip-scroller {
	overflow-y: auto;
	max-height: 70vh;
}
.tprf-wrap-flip[data-tprf-active="1"] table.tprf-flip {
	width: 100%;
	border-collapse: collapse;
	background: var(--tprf-bg);
}
.tprf-wrap-flip[data-tprf-active="1"] table.tprf-flip th,
.tprf-wrap-flip[data-tprf-active="1"] table.tprf-flip td {
	padding: var(--tprf-pad);
	border-bottom: 1px solid var(--tprf-border);
	text-align: left;
	vertical-align: top;
}
.tprf-wrap-flip[data-tprf-active="1"] table.tprf-flip th {
	background: var(--tprf-row-alt);
	color: var(--tprf-muted);
	font-weight: 600;
	width: 35%;
}

/* ---------- Collapse mode (tiles) ---------- */
.tprf-wrap-collapse[data-tprf-active="1"] table,
.tprf-wrap-collapse[data-tprf-active="1"] table thead,
.tprf-wrap-collapse[data-tprf-active="1"] table tbody,
.tprf-wrap-collapse[data-tprf-active="1"] table tr,
.tprf-wrap-collapse[data-tprf-active="1"] table th,
.tprf-wrap-collapse[data-tprf-active="1"] table td {
	display: block;
	width: auto;
}
.tprf-wrap-collapse[data-tprf-active="1"] table thead { display: none; }
.tprf-wrap-collapse[data-tprf-active="1"] table { border-collapse: separate; border-spacing: 0; }

/* The tile itself */
.tprf-wrap-collapse[data-tprf-active="1"] table tr {
	margin: 0 0 1.25rem;
	padding: 0;
	background: var(--tprf-bg);
	border: 1px solid var(--tprf-border);
	border-radius: calc(var(--tprf-radius) + 4px);
	box-shadow: var(--tprf-shadow);
	overflow: hidden;
	transition: transform var(--tprf-tx), box-shadow var(--tprf-tx);
}
.tprf-wrap-collapse[data-tprf-active="1"] table tr:hover {
	transform: translateY(-2px);
	box-shadow: 0 4px 8px rgba(0,0,0,.08), 0 12px 28px rgba(0,0,0,.08);
}

/* Default cell = labeled key/value row */
.tprf-wrap-collapse[data-tprf-active="1"] table td {
	display: grid;
	grid-template-columns: minmax(0, 38%) minmax(0, 1fr);
	gap: 1rem;
	align-items: start;
	padding: .75rem var(--tprf-pad);
	border: 0;
	border-top: 1px solid color-mix(in oklab, var(--tprf-border) 60%, transparent);
	text-align: left;
	font-size: .95rem;
}
.tprf-wrap-collapse[data-tprf-active="1"] table td:first-child { border-top: 0; }
.tprf-wrap-collapse[data-tprf-active="1"] table td::before {
	content: attr(data-tprf-label);
	font-weight: 600;
	font-size: .78rem;
	letter-spacing: .04em;
	text-transform: uppercase;
	color: var(--tprf-muted);
	align-self: center;
}
.tprf-wrap-collapse[data-tprf-active="1"] table td[data-tprf-hidden="1"] { display: none; }
.tprf-wrap-collapse[data-tprf-active="1"] table td[data-tprf-hide-label="1"]::before { display: none; }
.tprf-wrap-collapse[data-tprf-active="1"] table td[data-tprf-hide-label="1"] {
	grid-template-columns: minmax(0, 1fr);
}

/* Image cell: full-width hero, no label, no padding */
.tprf-wrap-collapse[data-tprf-active="1"] table td[data-tprf-role="image"] {
	display: block;
	padding: 0;
	border-top: 0;
	background: color-mix(in oklab, var(--tprf-row-alt) 80%, transparent);
}
.tprf-wrap-collapse[data-tprf-active="1"] table td[data-tprf-role="image"]::before { display: none; }
.tprf-wrap-collapse[data-tprf-active="1"] table td[data-tprf-role="image"] img {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 16 / 10;
	object-fit: cover;
}

/* Title cell: large heading, no label */
.tprf-wrap-collapse[data-tprf-active="1"] table td[data-tprf-role="title"] {
	display: block;
	padding: 1rem var(--tprf-pad) .25rem;
	border-top: 0;
	font-size: 1.25rem;
	font-weight: 700;
	line-height: 1.25;
	color: var(--tprf-fg);
}
.tprf-wrap-collapse[data-tprf-active="1"] table td[data-tprf-role="title"]::before { display: none; }

/* CTA cell: full-width button row */
.tprf-wrap-collapse[data-tprf-active="1"] table td[data-tprf-role="cta"] {
	display: block;
	padding: .75rem var(--tprf-pad) 1rem;
	border-top: 0;
}
.tprf-wrap-collapse[data-tprf-active="1"] table td[data-tprf-role="cta"]::before { display: none; }
.tprf-wrap-collapse[data-tprf-active="1"] table td[data-tprf-role="cta"] a,
.tprf-wrap-collapse[data-tprf-active="1"] table td[data-tprf-role="cta"] button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	padding: .65rem 1rem;
	border-radius: calc(var(--tprf-radius) - 2px);
	font-weight: 600;
	text-decoration: none;
}

/* Optional: 2-column tile grid on tablet+ within the active breakpoint */
@media (min-width: 520px) {
	.tprf-wrap-collapse[data-tprf-active="1"] table tbody {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 1rem;
	}
	.tprf-wrap-collapse[data-tprf-active="1"] table tr { margin: 0; }
}

/* ---------- Reduced motion ---------- */
@media (prefers-reduced-motion: reduce) {
	.tprf-wrap * { transition: none !important; animation: none !important; }
}

/* ---------- Legacy hooks preserved (no-op styling, kept for selector compatibility) ---------- */
.tablepress-responsive-phone,
.tablepress-responsive-tablet,
.tablepress-responsive-desktop,
.tablepress-responsive-all { /* legacy compat */ }
