/* =================================================================================================
 * Kurzovní tabule 1.0.0 – mřížka dlaždic pro Bitcoin Casino CZ.
 *
 * Tvar: dvě dlaždice na řádek od 760 pixelů výš, jedna na řádek pod touto hranicí. Otevřená
 * dlaždice zabírá oba sloupce a rozklad se v ní rozloží na místě, takže se mřížka nikdy nerozpadne
 * na sloupec karet ani na tabulku.
 *
 * Barvy se berou z proměnných tmavé burzy, když je motiv dodá; jinak padají na vlastní hodnoty,
 * aby tabule byla čitelná i sama o sobě.
 * ============================================================================================== */

.kt-tabule {
	--kt-bg: var(--kp-bg, #0D1117);
	--kt-panel: var(--kp-panel, #161B22);
	--kt-panel-2: var(--kp-panel-2, #1C232C);
	--kt-line: var(--kp-line, #2A3441);
	--kt-ink: var(--kp-ink, #E6EDF3);
	--kt-ink-2: var(--kp-ink-2, #9DAAB8);
	--kt-amber: var(--kp-amber, #F7931A);
	--kt-amber-2: var(--kp-amber-2, #FFB454);
	--kt-green: var(--kp-green, #3FB950);
	--kt-red: var(--kp-red, #F8614A);
	--kt-violet: var(--kp-violet, #A371F7);
	--kt-pismo: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
	--kt-nadpis: "Space Grotesk", "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
	--kt-mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;

	box-sizing: border-box;
	max-width: 100%;
	margin: 0 0 2rem;
	padding: 0 0 20px;
	background: var(--kt-bg);
	border: 0;
	border-radius: 0;
	color: var(--kt-ink);
	font-family: var(--kt-pismo);
	font-size: 16px;
	line-height: 1.55;
}

.kt-tabule *,
.kt-tabule *::before,
.kt-tabule *::after {
	box-sizing: border-box;
}

.kt-tabule__nadpis {
	margin: 0 0 .6rem;
	font-family: var(--kt-nadpis);
	font-size: clamp(1.3rem, 1.1rem + 1vw, 1.7rem);
	line-height: 1.2;
	color: var(--kt-ink);
	letter-spacing: -.01em;
}

.kt-sdeleni,
.kt-radka {
	margin: 0 0 .85rem;
	padding: .55rem .7rem;
	border-left: 3px solid var(--kt-amber);
	background: var(--kt-panel);
	color: var(--kt-ink-2);
	font-size: .86rem;
	line-height: 1.5;
}

.kt-radka {
	border-left-color: var(--kt-violet);
	color: var(--kt-ink);
}

/* --- Mřížka ----------------------------------------------------------------------------------- */

.kt-mriz {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: 16px;
	align-items: stretch; /* obě dlaždice v řádku jsou stejně vysoké, tlačítka sedí v jedné lince */
}

@media (min-width: 760px) {
	.kt-mriz {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 18px;
	}
}

/* --- Jedna dlaždice --------------------------------------------------------------------------- */

.kt-dlazdice {
	position: relative;
	display: flex;
	flex-direction: column;
	gap: 12px;
	min-width: 0;
	padding: 18px 16px 16px;
	background: var(--kt-panel);
	border: 1px solid var(--kt-line);
	border-radius: 12px;
	box-shadow: 0 1px 0 rgba(255, 255, 255, .03) inset, 0 10px 26px -18px rgba(0, 0, 0, .9);
}

/* Otevřená dlaždice zabírá oba sloupce mřížky a rozklad se v ní rozloží na místě. */
.kt-dlazdice--otevrena {
	grid-column: 1 / -1;
	border-color: color-mix(in srgb, var(--kt-amber) 45%, var(--kt-line));
}

.kt-poradi {
	position: absolute;
	top: 10px;
	right: 12px;
	padding: 2px 7px;
	background: var(--kt-panel-2);
	border: 1px solid var(--kt-line);
	border-radius: 5px;
	color: var(--kt-amber-2);
	font-family: var(--kt-mono);
	font-size: .78rem;
	font-variant-numeric: tabular-nums;
	letter-spacing: .06em;
	line-height: 1.4;
}

/* --- Čelo: logo, název, štítek ----------------------------------------------------------------- */

.kt-celo {
	display: flex;
	align-items: center;
	gap: 13px;
	min-width: 0;
	padding-right: 44px;
}

.kt-logo {
	flex: 0 0 auto;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 92px;
	height: 56px;
	padding: 6px;
	background: var(--kt-podklad, var(--kt-panel-2));
	border: 1px solid var(--kt-line);
	border-radius: 8px;
	overflow: hidden;
}

.kt-logo a {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
}

.kt-logo img {
	max-width: 100%;
	max-height: 100%;
	width: auto;
	height: auto;
	object-fit: contain;
}

.kt-logo__slovo {
	font-family: var(--kt-nadpis);
	font-size: .82rem;
	font-weight: 600;
	color: var(--kt-ink);
	text-align: center;
	overflow-wrap: anywhere;
}

.kt-titul {
	min-width: 0;
}

.kt-jmeno {
	margin: 0;
	font-family: var(--kt-nadpis);
	font-size: 1.18rem;
	font-weight: 650;
	line-height: 1.2;
	letter-spacing: -.01em;
	overflow-wrap: anywhere;
}

.kt-jmeno a {
	color: var(--kt-ink);
	text-decoration: none;
}

.kt-jmeno a:hover,
.kt-jmeno a:focus-visible {
	color: var(--kt-amber-2);
	text-decoration: underline;
}

.kt-vlajka {
	margin: 4px 0 0;
	color: var(--kt-amber-2);
	font-family: var(--kt-mono);
	font-size: .74rem;
	letter-spacing: .05em;
	text-transform: uppercase;
	overflow-wrap: anywhere;
}

.kt-veta {
	margin: 0;
	color: var(--kt-ink-2);
	font-size: .9rem;
	line-height: 1.5;
}

/* --- Blok dvě krát dvě s číslicemi ------------------------------------------------------------- */

.kt-cifry {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1px;
	background: var(--kt-line);
	border: 1px solid var(--kt-line);
	border-radius: 9px;
	overflow: hidden;
}

.kt-cifra {
	min-width: 0;
	padding: 10px 12px;
	background: var(--kt-panel-2);
}

.kt-cifra__popis {
	display: block;
	color: var(--kt-ink-2);
	font-size: .7rem;
	letter-spacing: .07em;
	text-transform: uppercase;
}

.kt-cifra__cislo {
	display: block;
	margin-top: 3px;
	color: var(--kt-ink);
	font-family: var(--kt-mono);
	font-size: 1.04rem;
	font-weight: 600;
	font-variant-numeric: tabular-nums;
	line-height: 1.25;
	overflow-wrap: anywhere;
}

.kt-cifra__pod {
	display: block;
	margin-top: 2px;
	color: var(--kt-violet);
	font-family: var(--kt-mono);
	font-size: .72rem;
	overflow-wrap: anywhere;
}

/* --- Žetony kasy ------------------------------------------------------------------------------ */

.kt-zetony {
	display: flex;
	flex-wrap: wrap;
	gap: 5px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.kt-zeton {
	padding: 2px 7px;
	background: var(--kt-panel-2);
	border: 1px solid var(--kt-line);
	border-radius: 999px;
	color: var(--kt-ink-2);
	font-family: var(--kt-mono);
	font-size: .7rem;
	line-height: 1.6;
	overflow-wrap: anywhere;
}

.kt-zeton--coin {
	border-color: color-mix(in srgb, var(--kt-violet) 55%, var(--kt-line));
	color: var(--kt-violet);
}

/* --- Řádka o povolení ------------------------------------------------------------------------- */

.kt-licence {
	margin: 0;
	padding: 8px 10px;
	background: var(--kt-panel-2);
	border-left: 3px solid var(--kt-red);
	border-radius: 0 7px 7px 0;
	font-size: .78rem;
	line-height: 1.5;
}

.kt-licence--ano {
	border-left-color: var(--kt-green);
}

.kt-licence__stav {
	display: block;
	color: var(--kt-red);
	font-family: var(--kt-mono);
	font-size: .76rem;
	font-weight: 600;
	letter-spacing: .01em;
}

.kt-licence--ano .kt-licence__stav {
	color: var(--kt-green);
}

.kt-licence__zbytek {
	display: block;
	margin-top: 2px;
	color: var(--kt-ink-2);
	overflow-wrap: anywhere;
}

/* --- Tlačítko na celou šířku ------------------------------------------------------------------ */

.kt-cta {
	display: block;
	margin-top: auto;
	padding: 12px 14px;
	background: var(--kt-amber);
	border: 1px solid var(--kt-amber);
	border-radius: 9px;
	color: #0D1117;
	font-family: var(--kt-nadpis);
	font-size: 1rem;
	font-weight: 650;
	line-height: 1.3;
	text-align: center;
	text-decoration: none;
	transition: background-color .15s ease, transform .15s ease;
}

.kt-cta:hover,
.kt-cta:focus-visible {
	background: var(--kt-amber-2);
	border-color: var(--kt-amber-2);
	color: #0D1117;
	text-decoration: none;
	transform: translateY(-1px);
}

.kt-cta--chybi {
	background: transparent;
	border: 1px dashed var(--kt-amber);
	color: var(--kt-amber-2);
}

.kt-cta--chybi:hover,
.kt-cta--chybi:focus-visible {
	background: var(--kt-panel-2);
	border-color: var(--kt-amber-2);
	color: var(--kt-amber-2);
	transform: none;
}

.kt-jen-redakce {
	margin: 5px 0 0;
	color: var(--kt-ink-2);
	font-family: var(--kt-mono);
	font-size: .68rem;
	text-align: center;
}

/* --- Přepínač rozkladu ------------------------------------------------------------------------ */

.kt-prepinac {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
	width: 100%;
	padding: 9px 12px;
	background: var(--kt-panel-2);
	border: 1px solid var(--kt-line);
	border-radius: 8px;
	color: var(--kt-ink-2);
	cursor: pointer;
	font-family: var(--kt-mono);
	font-size: .76rem;
	letter-spacing: .03em;
	text-align: left;
}

.kt-prepinac:hover,
.kt-prepinac:focus-visible {
	border-color: var(--kt-amber);
	color: var(--kt-amber-2);
}

.kt-prepinac__text {
	min-width: 0;
	overflow-wrap: anywhere;
}

.kt-prepinac__sipka {
	flex: 0 0 auto;
	width: 8px;
	height: 8px;
	border-right: 1.6px solid currentColor;
	border-bottom: 1.6px solid currentColor;
	transform: rotate(45deg) translateY(-2px);
	transition: transform .18s ease;
}

.kt-prepinac[aria-expanded="true"] .kt-prepinac__sipka {
	transform: rotate(225deg) translateY(-2px);
}

/* --- Rozklad --------------------------------------------------------------------------------- */

.kt-panel {
	min-width: 0;
	padding-top: 13px;
	border-top: 1px solid var(--kt-line);
}

.kt-panel__mriz {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: 18px;
}

@media (min-width: 900px) {
	.kt-dlazdice--otevrena .kt-panel__mriz {
		grid-template-columns: minmax(0, 1fr) minmax(0, 1.12fr);
		gap: 26px;
	}
}

.kt-cast {
	min-width: 0;
}

.kt-cast__nadpis {
	margin: 0 0 .5rem;
	padding-bottom: .3rem;
	border-bottom: 1px solid var(--kt-line);
	color: var(--kt-amber-2);
	font-family: var(--kt-mono);
	font-size: .72rem;
	font-weight: 600;
	letter-spacing: .09em;
	text-transform: uppercase;
}

.kt-cast__nadpis + * {
	margin-top: 0;
}

.kt-cast > * + .kt-cast__nadpis {
	margin-top: 1.15rem;
}

.kt-udaje {
	display: grid;
	grid-template-columns: minmax(0, auto) minmax(0, 1fr);
	gap: 1px 0;
	margin: 0;
	background: var(--kt-line);
	border: 1px solid var(--kt-line);
	border-radius: 8px;
	overflow: hidden;
}

.kt-udaje dt,
.kt-udaje dd {
	margin: 0;
	padding: 7px 11px;
	background: var(--kt-panel-2);
	font-size: .8rem;
	line-height: 1.45;
	overflow-wrap: anywhere;
}

.kt-udaje dt {
	color: var(--kt-ink-2);
}

.kt-udaje dd {
	color: var(--kt-ink);
	font-family: var(--kt-mono);
	font-variant-numeric: tabular-nums;
}

.kt-stupne {
	margin: 0;
	padding-left: 1.3rem;
	color: var(--kt-ink-2);
	font-size: .84rem;
	line-height: 1.55;
}

.kt-stupne li {
	margin: 0 0 .35rem;
}

.kt-stupne li::marker {
	color: var(--kt-amber);
	font-family: var(--kt-mono);
}

.kt-drobne {
	margin: 0;
	color: var(--kt-ink-2);
	font-size: .76rem;
	line-height: 1.6;
}

.kt-povoleni {
	margin: 0;
	padding: 11px 13px;
	background: color-mix(in srgb, var(--kt-red) 7%, var(--kt-panel-2));
	border-left: 3px solid var(--kt-red);
	border-radius: 0 8px 8px 0;
	color: var(--kt-ink);
	font-size: .83rem;
	line-height: 1.6;
}

.kt-licence__plna {
	margin: .55rem 0 0;
	color: var(--kt-ink-2);
	font-family: var(--kt-mono);
	font-size: .73rem;
	line-height: 1.5;
	overflow-wrap: anywhere;
}

.kt-pohled {
	margin: 0;
	color: var(--kt-ink);
	font-size: .88rem;
	line-height: 1.62;
}

.kt-vahy {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: 14px;
	margin-top: 1.15rem;
}

@media (min-width: 560px) {
	.kt-vahy {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

.kt-vaha ul {
	margin: 0;
	padding: 0;
	list-style: none;
	font-size: .8rem;
	line-height: 1.5;
}

.kt-vaha li {
	position: relative;
	margin: 0 0 .4rem;
	padding-left: 1.05rem;
	color: var(--kt-ink-2);
	overflow-wrap: anywhere;
}

.kt-vaha li::before {
	position: absolute;
	left: 0;
	top: 0;
	font-family: var(--kt-mono);
	font-weight: 700;
}

.kt-vaha--pro li::before {
	content: "+";
	color: var(--kt-green);
}

.kt-vaha--proti li::before {
	content: "–";
	color: var(--kt-red);
}

.kt-stopa {
	margin: 1.1rem 0 0;
	padding-top: .55rem;
	border-top: 1px solid var(--kt-line);
	color: var(--kt-ink-2);
	font-family: var(--kt-mono);
	font-size: .68rem;
	line-height: 1.55;
}

/* --- Pod tabulí ------------------------------------------------------------------------------- */

.kt-znacka {
	margin: 14px 0 0;
	color: var(--kt-ink-2);
	font-family: var(--kt-mono);
	font-size: .7rem;
	letter-spacing: .03em;
}

.kt-varovani {
	margin: 14px 0 0;
	padding: 13px 15px;
	background: var(--kt-panel);
	border: 1px solid var(--kt-line);
	border-left: 3px solid var(--kt-amber);
	border-radius: 0 10px 10px 0;
}

.kt-varovani p {
	margin: 0;
}

.kt-varovani__zakon {
	color: var(--kt-ink);
	font-family: var(--kt-nadpis);
	font-size: .94rem;
	font-weight: 650;
	line-height: 1.45;
}

.kt-varovani__vek {
	display: flex;
	align-items: baseline;
	gap: 8px;
	margin-top: .5rem;
	color: var(--kt-ink-2);
	font-size: .82rem;
	line-height: 1.5;
}

.kt-vek {
	flex: 0 0 auto;
	padding: 1px 6px;
	background: var(--kt-panel-2);
	border: 1px solid var(--kt-red);
	border-radius: 5px;
	color: var(--kt-red);
	font-family: var(--kt-mono);
	font-size: .74rem;
	font-weight: 700;
}

.kt-varovani__linka {
	margin-top: .4rem;
	color: var(--kt-ink-2);
	font-size: .8rem;
	line-height: 1.5;
}

.kt-varovani__linka strong {
	color: var(--kt-amber-2);
	font-family: var(--kt-mono);
	font-variant-numeric: tabular-nums;
}

.kt-prazdno {
	margin: 0 0 2rem;
	padding: 14px 16px;
	background: #161B22;
	border: 1px dashed #F7931A;
	border-radius: 10px;
	color: #E6EDF3;
	font-size: .9rem;
}

.kt-prazdno a {
	color: #FFB454;
}

/* --- Úzká okna -------------------------------------------------------------------------------- */

@media (max-width: 479px) {
	.kt-tabule {
		padding: 0 0 16px;
		border-radius: 10px;
	}

	.kt-dlazdice {
		padding: 16px 13px 14px;
	}

	.kt-celo {
		gap: 10px;
	}

	.kt-logo {
		width: 76px;
		height: 48px;
	}

	.kt-jmeno {
		font-size: 1.08rem;
	}

	.kt-cifra {
		padding: 9px 10px;
	}
}

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

/* =================================================================================================
 * Obrana proti motivu. Astra podtrhává odkazy uvnitř obsahu a obarvuje tlačítka vlastní paletou
 * pravidly o specifičnosti 0,2,1. Následující selektory jsou o stupeň vyšší, takže dlaždice vypadá
 * stejně pod kterýmkoli motivem, a přitom nikde nestojí ani jedno !important.
 * ============================================================================================== */

.kt-tabule .kt-dlazdice .kt-jmeno a,
.kt-tabule .kt-dlazdice .kt-logo a,
.kt-tabule .kt-dlazdice a.kt-cta {
	text-decoration: none;
	box-shadow: none;
}

.kt-tabule .kt-dlazdice .kt-jmeno a {
	color: var(--kt-ink);
}

.kt-tabule .kt-dlazdice .kt-jmeno a:hover,
.kt-tabule .kt-dlazdice .kt-jmeno a:focus-visible {
	color: var(--kt-amber-2);
	text-decoration: underline;
}

.kt-tabule .kt-dlazdice a.kt-cta {
	background: var(--kt-amber);
	border-color: var(--kt-amber);
	color: #0D1117;
}

.kt-tabule .kt-dlazdice a.kt-cta:hover,
.kt-tabule .kt-dlazdice a.kt-cta:focus-visible {
	background: var(--kt-amber-2);
	border-color: var(--kt-amber-2);
	color: #0D1117;
}

.kt-tabule .kt-dlazdice a.kt-cta.kt-cta--chybi {
	background: transparent;
	border: 1px dashed var(--kt-amber);
	color: var(--kt-amber-2);
}

.kt-tabule .kt-dlazdice button.kt-prepinac,
.kt-tabule .kt-dlazdice button.kt-prepinac:hover,
.kt-tabule .kt-dlazdice button.kt-prepinac:focus,
.kt-tabule .kt-dlazdice button.kt-prepinac:active {
	background: var(--kt-panel-2);
	border: 1px solid var(--kt-line);
	color: var(--kt-ink-2);
	box-shadow: none;
	text-transform: none;
}

.kt-tabule .kt-dlazdice button.kt-prepinac:hover,
.kt-tabule .kt-dlazdice button.kt-prepinac:focus-visible {
	border-color: var(--kt-amber);
	color: var(--kt-amber-2);
}

.kt-tabule a:focus-visible,
.kt-tabule button:focus-visible {
	outline: 2px solid var(--kt-amber-2);
	outline-offset: 2px;
}

/* A theme may indent every list inside the content for bullets. These lists carry no marker, so the
   indent would push the chips and the figures off the edge the rest of the tile sits on. */
.kt-tabule ul,
.kt-tabule ol { padding-left: 0; }
.kt-tabule .kt-stupne,
.kt-tabule .kt-vahy ul { padding-left: 1.3em; }
