/**
 * Poker Tournament Widget — frontend styles.
 *
 * @package PokerTournamentWidget
 */

.ptw-widget {
	--ptw-brand: #a700fd;
	--ptw-head: #1a0030;
	--ptw-ink: #111111;
	--ptw-ink2: #666666;
	--ptw-ink3: #888888;
	--ptw-bg: #f4f4f2;
	--ptw-rule: #dddddd;
	--ptw-gold: #a700fd;
	--ptw-radius: 6px;
	--ptw-row-h: 35px;
	--ptw-body-h: calc(var(--ptw-row-h) * 5);
	max-width: 650px;
	width: 100%;
	margin: 0 auto;
	border: 1px solid var(--ptw-rule);
	border-radius: var(--ptw-radius);
	overflow: hidden;
	background: var(--ptw-bg);
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, sans-serif;
}

.ptw-head {
	background: var(--ptw-head);
	padding: 11px 14px;
	border-radius: var(--ptw-radius) var(--ptw-radius) 0 0;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
}

.ptw-eyebrow {
	font-family: "DM Mono", "Courier New", monospace;
	font-size: 9px;
	color: var(--ptw-brand);
	letter-spacing: 0.1em;
	text-transform: uppercase;
	margin: 0;
	flex: 1 1 auto;
	min-width: 0;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.ptw-title {
	font-family: "Playfair Display", Georgia, "Times New Roman", serif;
	font-size: 13px;
	font-weight: 600;
	color: #ffffff;
	margin: 0;
	line-height: 1.3;
	text-align: right;
	flex: 0 0 auto;
	max-width: 58%;
	white-space: nowrap;
}

.ptw-body {
	background: var(--ptw-bg);
	border-top: none;
	min-height: var(--ptw-body-h);
	height: var(--ptw-body-h);
	overflow: hidden;
	box-sizing: border-box;
}

.ptw-body__inner {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: stretch;
	min-height: var(--ptw-body-h);
	height: 100%;
	box-sizing: border-box;
}

.ptw-body__inner--upcoming {
	padding: 0;
}

.ptw-body__inner--completed {
	justify-content: flex-start;
}

.ptw-leaders {
	border-top: 1px solid var(--ptw-rule);
	min-height: var(--ptw-body-h);
	height: var(--ptw-body-h);
	box-sizing: border-box;
}

.ptw-row {
	display: grid;
	grid-template-columns: 22px 1fr auto;
	gap: 8px;
	align-items: center;
	height: var(--ptw-row-h);
	min-height: var(--ptw-row-h);
	max-height: var(--ptw-row-h);
	padding: 0 12px;
	border-bottom: 1px solid var(--ptw-rule);
	background: var(--ptw-bg);
	box-sizing: border-box;
	overflow: hidden;
}

.ptw-row:last-child {
	border-bottom: none;
}

.ptw-row--empty {
	visibility: hidden;
	pointer-events: none;
}

.ptw-pos {
	font-family: "DM Mono", "Courier New", monospace;
	font-size: 11px;
	color: var(--ptw-ink3);
	text-align: left;
}

.ptw-pos--gold {
	color: var(--ptw-gold);
	font-weight: 700;
}

.ptw-name {
	font-size: 12px;
	font-weight: 500;
	color: var(--ptw-ink);
	line-height: 1.2;
	min-width: 0;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.ptw-chips {
	font-family: "DM Mono", "Courier New", monospace;
	font-size: 10px;
	font-weight: 600;
	color: var(--ptw-ink2);
	white-space: nowrap;
}

.ptw-message {
	margin: 0;
	padding: 10px 12px;
	font-size: 11px;
	line-height: 1.45;
	color: var(--ptw-ink2);
}

.ptw-message--completed,
.ptw-message--upcoming {
	padding: 6px 12px 10px;
}

.ptw-message--empty {
	font-family: "DM Mono", "Courier New", monospace;
	font-size: 10px;
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: var(--ptw-body-h);
	height: 100%;
	text-align: center;
}

.ptw-next-event {
	margin: 0;
	padding: 10px 12px 4px;
	font-family: "Playfair Display", Georgia, serif;
	font-size: 11px;
	font-weight: 600;
	color: var(--ptw-ink);
	line-height: 1.3;
}

.ptw-countdown {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	padding: 4px 12px;
}

.ptw-countdown__block {
	display: flex;
	flex-direction: column;
	align-items: center;
	min-width: 42px;
}

.ptw-countdown__num {
	font-family: "DM Mono", "Courier New", monospace;
	font-size: 18px;
	font-weight: 700;
	color: var(--ptw-ink);
	line-height: 1.1;
}

.ptw-countdown__lbl {
	font-family: "DM Mono", "Courier New", monospace;
	font-size: 8px;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--ptw-ink3);
	margin-top: 2px;
}

.ptw-countdown__sep {
	font-family: "DM Mono", "Courier New", monospace;
	font-size: 16px;
	color: var(--ptw-ink3);
	padding-bottom: 12px;
}

.ptw-foot {
	padding: 8px 12px 10px;
	border-top: 1px solid var(--ptw-rule);
	background: #ececea;
}

.ptw-updated {
	font-family: "DM Mono", "Courier New", monospace;
	font-size: 8px;
	color: var(--ptw-ink3);
	font-style: normal;
}

.ptw-updated__when {
	font-style: italic;
}

/* Upcoming mode — greyed card */
.ptw-widget--upcoming {
	opacity: 0.92;
}

.ptw-widget--upcoming .ptw-head {
	background: var(--ptw-head);
}

.ptw-widget--upcoming .ptw-eyebrow {
	color: var(--ptw-brand);
}

.ptw-widget--upcoming .ptw-title {
	color: #ffffff;
}

.ptw-widget--upcoming .ptw-body,
.ptw-widget--upcoming .ptw-row {
	background: #e8e8e6;
}

.ptw-widget--upcoming .ptw-countdown__num {
	color: #555555;
}

/* Completed mode */
.ptw-widget--completed .ptw-head {
	background: #242424;
}

.ptw-widget--completed .ptw-eyebrow {
	color: var(--ptw-brand);
}

@media (max-width: 600px) {
	.ptw-title {
		font-size: 12px;
	}

	.ptw-name {
		font-size: 11px;
	}

	.ptw-chips {
		font-size: 9px;
	}

	.ptw-countdown__num {
		font-size: 16px;
	}

	.ptw-countdown__block {
		min-width: 36px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.ptw-widget * {
		transition: none !important;
	}
}
