




.ledger-hero {
	position: relative;
	min-height: 50vh;
	display: flex;
	align-items: flex-end;
	background-size: cover;
	background-position: center 42%;
	border-top: 4px solid var(--gold-2);
	overflow: hidden;
}

.ledger-hero__scrim {
	position: absolute;
	inset: 0;
	background:
		linear-gradient(0deg, var(--bg) 2%, rgba(13, 9, 6, 0.5) 45%, rgba(13, 9, 6, 0.72) 100%),
		radial-gradient(120% 90% at 15% 100%, rgba(201, 162, 74, 0.35), transparent 60%);
}

.ledger-hero__inner {
	position: relative;
	padding-top: 7vh;
	padding-bottom: 40px;
}

.ledger-hero .kicker {
	color: var(--gold-2, #d9b467);
	margin: 14px 0 12px;
	text-shadow: 0 1px 3px rgba(0, 0, 0, 0.7);
}

.ledger-hero h1 {
	font-family: var(--font-serif);
	font-weight: 400;
	font-size: clamp(1.9rem, 4vw, 2.8rem);
	line-height: 1.12;
	margin: 0 0 16px;
	color: #f8efd8;
	text-wrap: balance;
	max-width: 30ch;
	text-shadow: 0 2px 22px rgba(0, 0, 0, 0.75);
}

.ledger-hero .sub {
	max-width: 58ch;
	margin: 0;
	color: #dccdab;
	font-size: 1.02rem;
	line-height: 1.6;
	text-shadow: 0 2px 10px rgba(0, 0, 0, 0.7);
}



.mx-stage {
	max-width: 1140px;
	margin: 18px auto 60px;
	border-radius: 10px;
	overflow: hidden;
	background: radial-gradient(ellipse 90% 40% at 30% -5%, #33230f 0%, #1c130c 45%, #100a06 100%);
	box-shadow: 0 30px 70px -30px rgba(0, 0, 0, 0.7);
	padding: 54px 46px 50px;
	position: relative;
}

.mx-stage::after {
	content: "";
	position: absolute;
	inset: 0;
	box-shadow: inset 0 0 130px 40px rgba(0, 0, 0, 0.5);
	pointer-events: none;
}

.mx-stage > * {
	position: relative;
	z-index: 1;
}

.mx-stage .kicker {
	font-family: var(--font-mono, ui-monospace, monospace);
	font-size: 0.68rem;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	color: var(--gold-2, #d9b467);
	margin: 0 0 14px;
}

.mx-stage h1 {
	font-size: clamp(1.8rem, 3.6vw, 2.7rem);
	margin: 0 0 10px;
	text-wrap: balance;
}

.mx-stage .sub {
	max-width: 64ch;
	color: var(--tan, #cfc09c);
	font-size: 0.98rem;
	line-height: 1.6;
	margin: 0 0 30px;
}

.mx-stage .section {
	margin-top: 58px;
}



.controls {
	display: flex;
	flex-wrap: wrap;
	gap: 14px;
	align-items: center;
	margin-bottom: 24px;
}

.vertical-tabs {
	display: flex;
	border: 1px solid var(--line, #6b5a37);
	border-radius: 22px;
	overflow: hidden;
}

.vtab {
	appearance: none;
	background: none;
	border: none;
	color: #c9b98f;
	font-size: 0.8rem;
	letter-spacing: 0.05em;
	padding: 9px 18px;
	cursor: pointer;
	border-right: 1px solid #6b5a3766;
}

.vtab:last-child {
	border-right: none;
}

.vtab[aria-pressed="true"] {
	background: linear-gradient(180deg, #c9a24a, #a37f2e);
	color: #1c130c;
	font-weight: 700;
}

.vtab:focus-visible {
	outline: 2px solid var(--gold, #e8c778);
	outline-offset: -2px;
}

.prov-select {
	background: rgba(20, 14, 8, 0.7);
	border: 1px solid var(--line, #6b5a37);
	color: var(--tan, #e9dcc0);
	font-family: inherit;
	font-size: 0.84rem;
	padding: 9px 14px;
	border-radius: 22px;
	cursor: pointer;
}

.prov-select:focus-visible {
	outline: 2px solid var(--gold, #e8c778);
}

.legend {
	display: flex;
	gap: 16px;
	flex-wrap: wrap;
	margin-left: auto;
	font-size: 0.72rem;
	color: #b3a37c;
	font-family: var(--font-sans, -apple-system, "Segoe UI", sans-serif);
	align-items: center;
}

.legend .dot {
	width: 10px;
	height: 10px;
	border-radius: 50%;
	display: inline-block;
	margin-right: 5px;
	vertical-align: -1px;
}



.ledger-frame {
	padding: 1px;
	border-radius: 12px;
	background: linear-gradient(160deg, #a3812f 0%, #5c4622 24%, #3a2c15 50%, #5c4622 76%, #a3812f 100%);
	box-shadow: 0 18px 44px -20px rgba(0, 0, 0, 0.85);
}

.ledger {
	border-radius: 11px;
	overflow: hidden;
	background: radial-gradient(ellipse 120% 30% at 50% 0%, rgba(201, 162, 74, 0.06), transparent 60%), rgba(13, 8, 4, 0.92);
}

.ledger-head {
	display: grid;
	grid-template-columns: 2.1fr 1.2fr 1.2fr 1.2fr;
	padding: 14px 20px;
	background: linear-gradient(180deg, rgba(201, 162, 74, 0.22), rgba(201, 162, 74, 0.04));
	border-bottom: 1px solid transparent;
	border-image: linear-gradient(90deg, transparent, #c9a24a88 20%, #c9a24a88 80%, transparent) 1;
	font-family: var(--font-mono, ui-monospace, monospace);
	font-size: 0.64rem;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: #e3c06a;
	text-shadow: 0 1px 2px rgba(0, 0, 0, 0.8);
}

.row {
	border-bottom: 1px dotted #6b5a3755;
	transition: background 0.25s ease, opacity 0.25s ease;
	position: relative;
}

.row:nth-child(even) {
	background: rgba(232, 199, 120, 0.022);
}

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

.row.dim {
	opacity: 0.3;
}

.row.spot {
	background: linear-gradient(90deg, rgba(201, 162, 74, 0.16), rgba(201, 162, 74, 0.03));
}

.row::before {
	content: "";
	position: absolute;
	left: 0;
	top: 8%;
	bottom: 8%;
	width: 3px;
	border-radius: 0 2px 2px 0;
	background: linear-gradient(180deg, transparent, #e8c778, transparent);
	opacity: 0;
	transition: opacity 0.25s ease;
}

.row:hover::before,
.row.spot::before {
	opacity: 1;
}

.row-main {
	display: grid;
	grid-template-columns: 2.1fr 1.2fr 1.2fr 1.2fr;
	align-items: center;
	padding: 16px 20px;
	cursor: pointer;
}

.ledger-condensed .row-main {
	cursor: default;
}

.row-main:hover {
	background: rgba(232, 199, 120, 0.055);
}

.row:hover .logo-tile {
	border-color: #c9a24a;
	box-shadow: 0 6px 18px -5px rgba(201, 162, 74, 0.35), inset 0 1px 0 rgba(232, 199, 120, 0.35);
}

.row:hover .flag {
	border-color: rgba(232, 199, 120, 0.7);
}

.prov-cell {
	display: flex;
	align-items: center;
	gap: 13px;
}

.flag {
	width: 46px;
	height: 30px;
	border-radius: 3px;
	flex-shrink: 0;
	position: relative;
	overflow: hidden;
	border: 1px solid rgba(232, 199, 120, 0.35);
	box-shadow: 0 3px 8px -3px rgba(0, 0, 0, 0.7);
	display: flex;
	align-items: center;
	justify-content: center;
	transition: border-color 0.25s ease;
}

.flag::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(115deg, rgba(255, 255, 255, 0.28) 0%, rgba(255, 255, 255, 0.05) 38%, transparent 55%);
}

.flag .abbr {
	position: relative;
	font-family: var(--font-mono, ui-monospace, monospace);
	font-size: 0.6rem;
	font-weight: 700;
	color: rgba(255, 255, 255, 0.92);
	text-shadow: 0 1px 3px rgba(0, 0, 0, 0.8);
	letter-spacing: 0.05em;
}

.prov-name {
	font-size: 1.04rem;
	color: #f3e9d2;
	display: flex;
	align-items: center;
	gap: 8px;
}

.status-pill {
	font-family: var(--font-sans, -apple-system, "Segoe UI", sans-serif);
	font-size: 0.62rem;
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	padding: 2.5px 9px;
	border-radius: 10px;
	display: inline-block;
	margin-top: 4px;
}

.status-pill.open {
	background: rgba(127, 184, 106, 0.16);
	color: #a9d894;
	border: 1px solid rgba(127, 184, 106, 0.45);
}

.status-pill.gov {
	background: rgba(201, 162, 74, 0.14);
	color: #e8c778;
	border: 1px solid rgba(201, 162, 74, 0.45);
}

.status-pill.unreg {
	background: rgba(150, 138, 116, 0.12);
	color: #b3a37c;
	border: 1px solid rgba(150, 138, 116, 0.4);
}


.status-pill.na {
	background: rgba(143, 131, 104, 0.12);
	color: #8f8368;
	border: 1px solid rgba(143, 131, 104, 0.38);
}

.v-cell {
	font-family: var(--font-sans, -apple-system, "Segoe UI", sans-serif);
	font-size: 0.78rem;
	padding-right: 10px;
	line-height: 1.35;
}

.v-cell .mark {
	font-size: 0.85rem;
	margin-right: 5px;
}

.v-cell.yes .status-line {
	color: #a9d894;
	font-weight: 600;
}

.v-cell.gov .status-line {
	color: #e8c778;
	font-weight: 600;
}

.v-cell.no .status-line {
	color: #8f8368;
}

.v-cell .authority {
	display: block;
	font-size: 0.66rem;
	color: #94865f;
	letter-spacing: 0.02em;
	margin-top: 2px;
}

.hidden-col {
	display: none !important;
}


.best-cell {
	display: flex;
	align-items: center;
	gap: 12px;
	font-family: var(--font-sans, -apple-system, "Segoe UI", sans-serif);
}

.best-variant {
	display: flex;
	align-items: center;
	gap: 12px;
}

.logo-tile {
	width: 54px;
	height: 54px;
	border-radius: 10px;
	background: linear-gradient(160deg, #32251a, #150e08);
	border: 1px solid #7d6337;
	box-shadow: 0 6px 14px -6px rgba(0, 0, 0, 0.8), inset 0 1px 0 rgba(232, 199, 120, 0.25);
	display: flex;
	align-items: center;
	justify-content: center;
	font-family: var(--font-serif, "Iowan Old Style", Palatino, serif);
	font-size: 1.05rem;
	color: #e8c778;
	flex-shrink: 0;
	overflow: hidden;
}

.logo-tile.has-img {
	
	background: #f4efe2;
	border-color: #c9a24a55;
}

.logo-tile img {
	max-width: 78%;
	max-height: 78%;
	object-fit: contain;
}

.best-meta {
	line-height: 1.35;
}

.best-meta .bname {
	font-size: 0.86rem;
	color: #f0e3c0;
	font-weight: 600;
}

.best-meta .bnote {
	font-size: 0.68rem;
	color: #a3946f;
}

.best-actions {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-top: 6px;
	flex-wrap: wrap;
}

.best-actions .visit {
	font-size: 0.66rem;
	font-weight: 700;
	letter-spacing: 0.05em;
	color: #c9a24a;
	text-transform: uppercase;
	text-decoration: none;
	cursor: pointer;
}

.btn-top5 {
	display: inline-block;
	padding: 5px 12px;
	border-radius: 12px;
	background: linear-gradient(180deg, #eac26a, #a37f2e);
	color: #1c130c;
	font-family: var(--font-sans, -apple-system, "Segoe UI", sans-serif);
	font-size: 0.62rem;
	font-weight: 800;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	text-decoration: none;
	box-shadow: 0 3px 9px -3px rgba(0, 0, 0, 0.75), inset 0 1px 0 rgba(255, 255, 255, 0.4);
	cursor: pointer;
	transition: transform 0.2s ease, box-shadow 0.2s ease;
	white-space: nowrap;
}

.btn-top5:hover {
	transform: translateY(-1px);
	box-shadow: 0 6px 14px -4px rgba(201, 162, 74, 0.5), inset 0 1px 0 rgba(255, 255, 255, 0.45);
	color: #1c130c;
}

.btn-review {
	display: inline-block;
	padding: 4px 11px;
	border-radius: 12px;
	background: none;
	border: 1px solid #c9a24a99;
	color: #e0c07f;
	font-family: var(--font-sans, -apple-system, "Segoe UI", sans-serif);
	font-size: 0.62rem;
	font-weight: 700;
	letter-spacing: 0.07em;
	text-transform: uppercase;
	text-decoration: none;
	cursor: pointer;
	transition: background 0.2s ease, border-color 0.2s ease;
	white-space: nowrap;
}

.btn-review:hover {
	background: rgba(201, 162, 74, 0.14);
	border-color: #e8c778;
	color: #e0c07f;
}

.best-cell .none-note {
	color: #8f8368;
	font-style: italic;
	font-size: 0.78rem;
}

.row-detail {
	display: none;
	padding: 4px 20px 18px 79px;
	font-family: var(--font-sans, -apple-system, "Segoe UI", sans-serif);
	font-size: 0.82rem;
	line-height: 1.6;
	color: #cbbc98;
}

.row.expanded .row-detail {
	display: block;
	animation: gg-mx-detail-in 0.35s ease;
}

@keyframes gg-mx-detail-in {
	from {
		opacity: 0;
		transform: translateY(-6px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}

.row-detail .offshore {
	margin-top: 8px;
	padding: 8px 12px;
	border-left: 2px solid #8a7f6a;
	background: rgba(138, 127, 106, 0.08);
	font-size: 0.78rem;
	color: #b3a37c;
}

.foot-note {
	margin-top: 20px;
	font-size: 0.74rem;
	color: #97896c;
	font-family: var(--font-mono, ui-monospace, monospace);
	line-height: 1.6;
}



.tl-wrap {
	position: relative;
	padding: 10px 0 30px;
}

.tl-svg {
	position: absolute;
	left: 50%;
	top: 0;
	width: 60px;
	height: 100%;
	transform: translateX(-50%);
	pointer-events: none;
	overflow: visible;
}

.tl-track {
	fill: none;
	stroke: #3a2c15;
	stroke-width: 2.5;
	stroke-linecap: round;
}

.tl-ink {
	fill: none;
	stroke: #e8c778;
	stroke-width: 2.5;
	stroke-linecap: round;
	filter: drop-shadow(0 0 5px rgba(232, 199, 120, 0.65));
}

.tl-item {
	position: relative;
	width: 46%;
	margin-bottom: 42px;
	opacity: 0;
	transform: translateY(22px);
	transition: opacity 0.55s ease, transform 0.55s cubic-bezier(0.22, 1, 0.36, 1);
}

.tl-item.on {
	opacity: 1;
	transform: translateY(0);
}

.tl-item:nth-child(odd) {
	margin-right: auto;
	text-align: right;
}

.tl-item:nth-child(even) {
	margin-left: auto;
	text-align: left;
}

.tl-year {
	font-family: var(--font-serif, "Iowan Old Style", Palatino, serif);
	font-size: 2.2rem;
	line-height: 1;
	color: #e8c778;
	text-shadow: 0 0 22px rgba(201, 162, 74, 0.4);
	margin-bottom: 6px;
}

.tl-name {
	font-family: var(--font-serif, "Iowan Old Style", Palatino, serif);
	font-size: 1.12rem;
	color: #f3e9d2;
	margin-bottom: 3px;
}

.tl-juris {
	font-family: var(--font-sans, -apple-system, "Segoe UI", sans-serif);
	font-size: 0.66rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: #c9a24a;
	margin-bottom: 7px;
}

.tl-juris .tl-type {
	font-weight: 600;
	color: #94865f;
	border: 1px solid #6b5a3788;
	border-radius: 8px;
	padding: 1px 7px;
	margin-left: 6px;
}

.tl-item:nth-child(odd) .tl-juris .tl-type {
	margin-left: 0;
	margin-right: 6px;
}

.tl-blurb {
	font-family: var(--font-sans, -apple-system, "Segoe UI", sans-serif);
	font-size: 0.8rem;
	line-height: 1.55;
	color: #b8a982;
	margin: 0;
}

.tl-dot {
	position: absolute;
	top: 12px;
	width: 13px;
	height: 13px;
	border-radius: 50%;
	background: #e8c778;
	box-shadow: 0 0 0 4px #140d07, 0 0 16px 3px rgba(232, 199, 120, 0.75);
	transform: scale(0);
	transition: transform 0.45s cubic-bezier(0.22, 1, 0.36, 1);
	z-index: 2;
}

.tl-item.on .tl-dot {
	transform: scale(1);
}

.tl-item:nth-child(odd) .tl-dot {
	right: calc(-8.7% - 7px);
}

.tl-item:nth-child(even) .tl-dot {
	left: calc(-8.7% - 7px);
}

@media (max-width: 860px) {
	.tl-svg {
		left: 0;
		transform: none;
	}

	.tl-item,
	.tl-item:nth-child(odd),
	.tl-item:nth-child(even) {
		width: auto;
		margin: 0 0 36px 52px;
		text-align: left;
	}

	.tl-item:nth-child(odd) .tl-dot,
	.tl-item:nth-child(even) .tl-dot {
		left: -28px;
		right: auto;
	}
}

@media (prefers-reduced-motion: reduce) {
	.tl-item {
		opacity: 1;
		transform: none;
	}

	.tl-dot {
		transform: scale(1);
	}
}



.game-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	grid-auto-rows: 1fr;
	gap: 18px;
}

.game-card {
	background: linear-gradient(165deg, rgba(50, 37, 26, 0.75), rgba(18, 12, 7, 0.85));
	border: 1px solid #6b5a3777;
	border-radius: 10px;
	overflow: hidden;
	transition: transform 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;
	cursor: pointer;
	display: flex;
	flex-direction: column;
	text-decoration: none;
	color: inherit;
}

.game-card:hover {
	transform: translateY(-5px);
	border-color: #c9a24a99;
	box-shadow: 0 18px 32px -14px rgba(0, 0, 0, 0.9);
}

.gc-img {
	aspect-ratio: 16 / 10;
	background-size: cover;
	background-position: center;
	position: relative;
	transition: transform 0.4s ease;
}

.gc-img::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(0deg, rgba(18, 12, 7, 0.85) 0%, transparent 42%);
}

.game-card:hover .gc-img {
	transform: scale(1.045);
}

.gc-imgwrap {
	overflow: hidden;
}

.gc-body {
	padding: 15px 17px 16px;
}

.game-card h4 {
	font-family: var(--font-serif, "Iowan Old Style", Palatino, serif);
	font-weight: 400;
	font-size: 1.1rem;
	margin: 0 0 7px;
	color: #f3e9d2;
}

.game-card p {
	font-family: var(--font-sans, -apple-system, "Segoe UI", sans-serif);
	font-size: 0.78rem;
	line-height: 1.5;
	color: #b8a982;
	margin: 0 0 12px;
}

.game-card .how {
	font-size: 0.72rem;
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: #c9a24a;
	font-family: var(--font-sans, -apple-system, "Segoe UI", sans-serif);
}

.game-card .how::after {
	content: " →";
}



.prov-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	grid-auto-rows: 1fr;
	gap: 16px;
}

.prov-chip {
	background: linear-gradient(165deg, rgba(44, 32, 20, 0.75), rgba(16, 10, 6, 0.88));
	border: 1px solid #6b5a3777;
	border-radius: 10px;
	padding: 18px 16px;
	text-align: center;
	transition: transform 0.25s ease, border-color 0.25s ease;
}

.prov-chip:hover {
	transform: translateY(-3px);
	border-color: #c9a24a99;
}

.prov-logo {
	height: 52px;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 10px;
}

.prov-logo img {
	max-height: 44px;
	max-width: 82%;
	object-fit: contain;
	filter: drop-shadow(0 2px 6px rgba(0, 0, 0, 0.5));
	opacity: 0.95;
}

.prov-fallback {
	font-family: var(--font-serif, "Iowan Old Style", Palatino, serif);
	font-size: 0.98rem;
	font-weight: 600;
	color: #e8c778;
}

.prov-chip .pv-name {
	font-family: var(--font-sans, -apple-system, "Segoe UI", sans-serif);
	font-size: 0.62rem;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: #94865f;
	display: block;
	margin-bottom: 6px;
}

.prov-chip .pv-tag {
	font-family: var(--font-sans, -apple-system, "Segoe UI", sans-serif);
	font-size: 0.74rem;
	color: #b8a982;
	line-height: 1.45;
}



.bonus-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	grid-auto-rows: 1fr;
	gap: 16px;
}

.bonus-card {
	position: relative;
	border: 1.5px dashed #c9a24a77;
	border-radius: 10px;
	background: radial-gradient(circle at 0 50%, #100a06 9px, transparent 9.5px), radial-gradient(circle at 100% 50%, #100a06 9px, transparent 9.5px), linear-gradient(165deg, rgba(50, 37, 26, 0.6), rgba(18, 12, 7, 0.8));
	padding: 20px 58px 18px 20px;
	transition: transform 0.25s ease, border-color 0.25s ease;
}

.bonus-card:hover {
	transform: translateY(-3px);
	border-color: #e8c778;
}

.bz-icon {
	position: absolute;
	top: 18px;
	right: 16px;
	width: 32px;
	height: 32px;
	color: #c9a24a;
	opacity: 0.9;
}

.bz-icon svg {
	width: 100%;
	height: 100%;
}

.bonus-card .bz-kind {
	font-family: var(--font-mono, ui-monospace, monospace);
	font-size: 0.6rem;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: #94865f;
	margin-bottom: 6px;
}

.bonus-card h4 {
	font-family: var(--font-serif, "Iowan Old Style", Palatino, serif);
	font-weight: 400;
	font-size: 1.12rem;
	margin: 0 0 8px;
	color: #f3e9d2;
}

.bonus-card p {
	font-family: var(--font-sans, -apple-system, "Segoe UI", sans-serif);
	font-size: 0.78rem;
	line-height: 1.55;
	color: #b8a982;
	margin: 0;
}

.bonus-card .bz-watch {
	display: block;
	margin-top: 10px;
	font-family: var(--font-sans, -apple-system, "Segoe UI", sans-serif);
	font-size: 0.7rem;
	color: #c9a24a;
}

.bonus-note {
	margin-top: 18px;
	padding: 12px 16px;
	border-left: 2px solid #c9a24a88;
	background: rgba(201, 162, 74, 0.07);
	font-family: var(--font-sans, -apple-system, "Segoe UI", sans-serif);
	font-size: 0.78rem;
	line-height: 1.6;
	color: #c3b48d;
}



.pay-row {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 14px;
	margin-bottom: 22px;
}

.pay-chip {
	display: flex;
	align-items: center;
	gap: 10px;
	background: rgba(20, 14, 8, 0.7);
	border: 1px solid #6b5a3777;
	border-radius: 10px;
	padding: 12px 18px;
	transition: border-color 0.25s ease;
	min-width: 0;
}

.pay-chip .pname,
.pay-chip .ptag {
	overflow-wrap: break-word;
}

.pay-chip:hover {
	border-color: #c9a24a99;
}

.pay-logo {
	width: 40px;
	height: 26px;
	border-radius: 4px;
	display: flex;
	align-items: center;
	justify-content: center;
	font-family: var(--font-sans, -apple-system, "Segoe UI", sans-serif);
	font-size: 0.56rem;
	font-weight: 800;
	letter-spacing: 0.02em;
}

.pay-chip .pname {
	font-family: var(--font-sans, -apple-system, "Segoe UI", sans-serif);
	font-size: 0.82rem;
	color: #ead9ac;
	display: block;
}

.pay-chip .ptag {
	font-family: var(--font-sans, -apple-system, "Segoe UI", sans-serif);
	font-size: 0.64rem;
	color: #94865f;
	display: block;
}

.sub-head {
	font-family: var(--font-serif, "Iowan Old Style", Palatino, serif);
	font-weight: 400;
	font-size: 1.15rem;
	color: #ead9ac;
	margin: 30px 0 16px;
}

.limits-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 18px;
}

.limits-grid--triple {
	grid-template-columns: repeat(3, 1fr);
}

.limit-panel {
	background: rgba(20, 14, 8, 0.6);
	border: 1px solid #6b5a3777;
	border-radius: 10px;
	padding: 22px;
}

.limit-panel h4 {
	font-family: var(--font-serif, "Iowan Old Style", Palatino, serif);
	font-weight: 400;
	font-size: 1.05rem;
	margin: 0 0 12px;
	color: #f3e9d2;
	display: flex;
	align-items: center;
	gap: 8px;
}

.limit-panel h4 .tick {
	color: #c9a24a;
}

.limit-panel ul {
	margin: 0;
	padding: 0 0 0 2px;
	list-style: none;
	font-family: var(--font-sans, -apple-system, "Segoe UI", sans-serif);
	font-size: 0.82rem;
	line-height: 1.65;
	color: #c3b48d;
}

.limit-panel li {
	padding: 5px 0;
	border-bottom: 1px dotted #6b5a3744;
	display: flex;
	justify-content: space-between;
	gap: 12px;
}

.limit-panel li:last-child {
	border-bottom: none;
}

.limit-panel li .val {
	color: #ead9ac;
	text-align: right;
}



@media (max-width: 860px) {
	
	.game-grid,
	.bonus-grid {
		grid-template-columns: repeat(2, 1fr) !important;
	}

	.prov-grid,
	.pay-row {
		grid-template-columns: repeat(2, 1fr);
	}

	.ledger-head {
		display: none;
	}

	.row-main {
		grid-template-columns: 1fr !important;
		gap: 10px;
	}

	.v-cell::before {
		content: attr(data-label) ": ";
		font-family: var(--font-mono, ui-monospace, monospace);
		font-size: 0.6rem;
		letter-spacing: 0.1em;
		text-transform: uppercase;
		color: #d9b467;
	}

	.row-detail {
		padding-left: 20px;
	}

	.legend {
		margin-left: 0;
	}

	.mx-stage {
		padding: 34px 20px 36px;
	}

	.limits-grid {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 560px) {
	.game-grid,
	.bonus-grid,
	.prov-grid,
	.pay-row {
		grid-template-columns: 1fr !important;
	}
}

@media (prefers-reduced-motion: reduce) {
	.tl-item {
		opacity: 1;
		transform: none;
	}

	.tl-dot {
		transform: scale(1);
	}
}
