.ck-wrap {
	--ck-ink: #18212f;
	--ck-muted: #667085;
	--ck-line: #d9e2ef;
	--ck-brand: #176b87;
	--ck-accent: #c9862b;
	color: var(--ck-ink);
	display: grid;
	gap: 16px;
	margin: 20px 0;
}

.ck-hero {
	background: linear-gradient(135deg, #333333, #000000);
	border-radius: 8px;
	color: #fff;
	padding: 24px;
}
.ck-hero h2{
	font-size: 1.6em;
}

.ck-hero h2,
.ck-hero p {
	margin: 0;
}

.ck-hero p {
	margin-top: 6px;
	opacity: .92;
}

.ck-kingdom-heading {
	align-items: flex-start;
	display: flex;
	gap: 20px;
	justify-content: space-between;
}

.ck-collection-panel {
	align-items: flex-end;
	display: grid;
	gap: 8px;
	justify-items: end;
	min-width: 210px;
	text-align: right;
}

.ck-collection-panel span {
	font-size: 13px;
	opacity: .92;
}

.ck-hero .ck-message {
	color: #fff;
	margin-top: 10px;
}

.ck-hero .ck-message.ck-error {
	color: #ffe4e0;
}

.ck-card {
	background: rgba(255,255,255,.96);
	border: 1px solid rgba(148, 163, 184, .32);
	border-radius: 18px;
	box-shadow: 0 20px 55px rgba(24, 33, 47, .12);
	padding: 22px;
}

.ck-create-card {
	align-items: center;
	display: grid;
	gap: 16px;
	justify-items: center;
	margin: -34px auto 0;
	max-width: 560px;
	padding: 30px;
	position: relative;
	z-index: 2;
	text-align: center;
}

.ck-create-card h3 {
	color: #172033;
	font-size: 24px;
	font-weight: 800;
	line-height: 1.2;
	margin: 0;
}

.ck-create-fields {
	display: grid;
	gap: 10px;
	grid-template-columns: minmax(220px, 1fr) minmax(160px, .7fr);
	max-width: 520px;
	width: 100%;
}

.ck-create-fields input,
.ck-create-fields select {
	background: #fff;
	border: 1px solid #cbd5e1;
	border-radius: 12px;
	color: #1f2937;
	font-size: 15px;
	min-height: 48px;
	padding: 0 14px;
	text-align: center;
}

.ck-create-fields input:focus,
.ck-create-fields select:focus {
	border-color: #38bdf8;
	box-shadow: 0 0 0 4px rgba(56,189,248,.16);
	outline: 0;
}

.ck-create-card .ck-button {
	background: linear-gradient(135deg, #4fd1ff 0%, #35e0c8 50%, #28c76f 100%);
	border-radius: 999px;
	box-shadow: 0 12px 28px rgba(40, 199, 111, .24);
	color: #062033;
	font-weight: 900;
	min-height: 46px;
	padding: 0 28px;
	text-transform: uppercase;
}

.ck-create-card .ck-button:hover,
.ck-create-card .ck-button:focus {
	background: linear-gradient(135deg, #6ee7ff 0%, #43ead3 50%, #34d399 100%);
	color: #062033;
	transform: translateY(-1px);
}

.ck-blessing-reveal {
	border-color: #c9862b;
	text-align: center;
}

.ck-blessing-reveal h3 {
	font-size: 20px;
	margin: 0 0 10px;
}

.ck-blessing-reveal strong {
	display: block;
	font-size: 18px;
	margin-bottom: 4px;
}

.ck-blessing-reveal p {
	margin: 0;
}

.ck-grid {
	display: grid;
	gap: 12px;
	grid-template-columns: repeat(auto-fit, minmax(130px, 1fr));
}

.ck-two {
	display: grid;
	gap: 16px;
	grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
}

.ck-stats span,
.ck-table small {
	color: var(--ck-muted);
	display: block;
	font-size: 12px;
}

.ck-stats strong {
	display: block;
	font-size: 24px;
	line-height: 1.15;
	margin-top: 4px;
}

.ck-button {
	align-items: center;
	background: var(--ck-brand);
	border: 0;
	border-radius: 6px;
	color: #fff;
	cursor: pointer;
	display: inline-flex;
	font-weight: 700;
	gap: 6px;
	justify-content: center;
	min-height: 38px;
	padding: 8px 12px;
	text-decoration: none;
}

.ck-button:hover,
.ck-button:focus {
	background: #12576e;
	color: #fff;
}

.ck-secondary {
	background: #f4f7fb;
	color: var(--ck-ink);
}

.ck-secondary:hover,
.ck-secondary:focus {
	background: #e8eef7;
	color: var(--ck-ink);
}

.ck-actions {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.ck-actions p {
	margin: 0 auto 0 0;
}

.ck-table {
	border-collapse: collapse;
	width: 100%;
}

.ck-table th,
.ck-table td {
	border-bottom: 1px solid var(--ck-line);
	padding: 10px 8px;
	text-align: left;
	vertical-align: middle;
}

.ck-table th {
	color: var(--ck-muted);
	font-size: 12px;
	text-transform: uppercase;
}

.ck-inline-form,
.ck-search {
	align-items: center;
	display: flex;
	gap: 8px;
}

.ck-inline-form input[type="number"] {
	max-width: 82px;
}

.ck-wrap input,
.ck-wrap select,
.ck-wrap textarea {
	border: 1px solid var(--ck-line);
	border-radius: 6px;
	box-sizing: border-box;
	min-height: 38px;
	padding: 8px 10px;
}

.ck-search input {
	flex: 1;
}

.ck-store-filters {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.ck-store-filter {
	background: #f4f7fb;
	border: 1px solid var(--ck-line);
	border-radius: 999px;
	color: var(--ck-ink);
	display: inline-flex;
	font-size: 13px;
	font-weight: 800;
	line-height: 1;
	padding: 9px 12px;
	text-decoration: none;
}

.ck-store-filter:hover,
.ck-store-filter:focus,
.ck-store-filter.is-active {
	background: linear-gradient(135deg, #fbbf24, #f97316);
	border-color: transparent;
	color: #fff;
}

.ck-message {
	color: var(--ck-brand, #176b87);
	font-weight: 700;
	width: 100%;
}

.ck-message.ck-error {
	color: #b42318;
}

.ck-kingdom-back-link {
	align-self: start;
	color: var(--ck-brand);
	display: inline-flex;
	font-size: 13px;
	font-weight: 800;
	justify-self: start;
	line-height: 1.2;
	margin-bottom: 2px;
	text-decoration: none;
}

.ck-kingdom-back-link:hover,
.ck-kingdom-back-link:focus {
	color: #12576e;
	text-decoration: underline;
}

.ck-kingdom-return {
	display: flex;
	justify-content: center;
	margin-top: 18px;
	width: 100%;
}

.ck-kingdom-return .ck-button {
	min-width: 190px;
}

.cbk-season-card {
	background: linear-gradient(180deg, #ffffff, #f7fbff);
	border-color: #bfd9f4;
	display: grid;
	gap: 14px;
}

.cbk-season-head {
	align-items: start;
	display: flex;
	gap: 16px;
	justify-content: space-between;
}

.cbk-season-kicker {
	color: var(--ck-brand);
	font-size: 11px;
	font-weight: 900;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.cbk-season-title {
	font-size: 22px;
	line-height: 1.15;
	margin: 4px 0;
}

.cbk-season-head p {
	color: var(--ck-muted);
	margin: 0;
}

.cbk-season-points {
	align-items: end;
	background: #111827;
	border-radius: 8px;
	color: #fff;
	display: grid;
	justify-items: end;
	min-width: 112px;
	padding: 12px;
}

.cbk-season-points strong {
	font-size: 30px;
	line-height: 1;
}

.cbk-season-points span {
	color: #93c5fd;
	font-size: 12px;
	font-weight: 900;
}

.cbk-season-stats {
	display: grid;
	gap: 10px;
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.cbk-season-stats > div {
	background: #fff;
	border: 1px solid #dbe7f5;
	border-radius: 8px;
	padding: 10px;
}

.cbk-season-stats span,
.cbk-season-progress span {
	color: var(--ck-muted);
	display: block;
	font-size: 12px;
}

.cbk-season-stats strong {
	display: block;
	font-size: 18px;
	margin-top: 3px;
}

.cbk-season-progress > div:first-child {
	display: flex;
	justify-content: space-between;
}

.cbk-season-rewards {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.cbk-season-tabs {
	background: #f4f7fb;
	border: 1px solid var(--ck-line);
	border-radius: 8px;
	display: inline-flex;
	gap: 4px;
	padding: 4px;
	width: fit-content;
}

.cbk-season-tabs a {
	border-radius: 6px;
	color: var(--ck-ink);
	font-weight: 800;
	padding: 8px 12px;
	text-decoration: none;
}

.cbk-season-tabs a.is-active {
	background: var(--ck-brand);
	color: #fff;
}

.cbk-tier-badge {
	background: #eef4fb;
	border-radius: 999px;
	display: inline-flex;
	font-size: 12px;
	font-weight: 900;
	line-height: 1;
	padding: 7px 10px;
}

.cbk-tier-legend,
.cbk-tier-master,
.cbk-tier-warlord,
.cbk-tier-general {
	background: #111827;
	color: #fff;
}

.cbk-tier-diamond,
.cbk-tier-commander {
	background: #e0f2fe;
	color: #075985;
}

.cbk-tier-platinum,
.cbk-tier-captain {
	background: #e5e7eb;
	color: #374151;
}

.cbk-tier-gold,
.cbk-tier-knight {
	background: #fef3c7;
	color: #92400e;
}

.cbk-tier-silver,
.cbk-tier-warrior,
.cbk-tier-soldier {
	background: #f1f5f9;
	color: #475569;
}

.ck-safety {
	color: var(--ck-muted);
	font-size: 13px;
	margin: 0;
}

.ck-color-badge,
.ck-avatar {
	align-items: center;
	border: 1px solid rgba(24, 33, 47, .12);
	border-radius: 999px;
	display: inline-flex;
	font-size: 12px;
	font-weight: 800;
	justify-content: center;
	line-height: 1;
	min-height: 26px;
	min-width: 26px;
	padding: 6px 8px;
	vertical-align: middle;
}

.ck-avatar-lg {
	border-radius: 8px;
	font-size: 24px;
	height: 56px;
	min-width: 56px;
	padding: 0;
}

.ck-color-red {
	background: #ffe8e5;
	color: #9f1d16;
}

.ck-color-blue {
	background: #e6f1ff;
	color: #175cd3;
}

.ck-color-green {
	background: #e7f8ee;
	color: #087443;
}

.ck-color-yellow {
	background: #fff4cf;
	color: #9a6700;
}

.ck-color-black {
	background: #242833;
	color: #f7f9fc;
}

.ck-color-white {
	background: #ffffff;
	color: #344054;
}

.ck-hero-grid {
	display: grid;
	gap: 16px;
	grid-template-columns: repeat(5, minmax(0, 1fr));
}

.ck-hero-grid-dashboard {
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.ck-hero-grid-four {
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.ck-hero-card {
	border: 1px solid var(--ck-line);
	border-radius: 8px;
	display: grid;
	gap: 10px;
	overflow: hidden;
	padding: 12px;
}

.ck-image-lightbox-trigger {
	background: transparent;
	border: 0;
	cursor: zoom-in;
	display: block;
	padding: 0;
	text-align: inherit;
	width: 100%;
}

.ck-image-lightbox-trigger:focus-visible {
	border-radius: 8px;
	box-shadow: 0 0 0 3px rgba(249, 115, 22, .32);
	outline: 0;
}

.ck-hero-image {
	aspect-ratio: 3 / 4;
	border-radius: 8px;
	max-height: 400px;
	object-fit: cover;
	width: 100%;
}

.ck-hero-grid-dashboard .ck-hero-image,
.ck-hero-grid-four .ck-hero-image,
.ck-hero-grid-dashboard .ck-hero-empty-frame {
	justify-self: center;
	max-width: 300px;
}

.ck-hero-card-details {
	display: grid;
	gap: 6px;
}

.ck-hero-meta {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
}

.ck-hero-card-details > span,
.ck-hero-card-details > small {
	color: var(--ck-muted);
	display: block;
	font-size: 12px;
}

.ck-hero-meta > span,
.ck-hero-meta > small {
	display: inline-flex;
}

.ck-hero-card-details .ck-star-rating,
.ck-star-rating {
	display: inline-flex;
	font-size: 13px;
	gap: 1px;
	letter-spacing: 0;
	line-height: 1;
}

.ck-star-filled {
	color: #f5b301;
	text-shadow: 0 1px 0 rgba(122, 77, 0, .18);
}

.ck-star-empty {
	color: #d0d5dd;
	text-shadow: none;
}

.ck-buy-hero-button {
	background: linear-gradient(135deg, #fbbf24, #f97316);
	color: #fff !important;
}

.ck-buy-hero-button:hover,
.ck-buy-hero-button:focus {
	background: linear-gradient(135deg, #f59e0b, #ea580c);
	color: #fff !important;
}

.ck-store-price {
	color: var(--ck-ink);
	display: block;
	font-size: 16px;
	font-weight: 800;
	line-height: 1.2;
}

.ck-lightbox {
	align-items: center;
	background: rgba(9, 14, 24, .86);
	display: flex;
	inset: 0;
	justify-content: center;
	opacity: 0;
	padding: 24px;
	pointer-events: none;
	position: fixed;
	transition: opacity .16s ease;
	z-index: 99999;
}

body.ck-lightbox-open {
	overflow: hidden;
}

.ck-lightbox.is-open {
	opacity: 1;
	pointer-events: auto;
}

.ck-lightbox-dialog {
	display: grid;
	gap: 10px;
	justify-items: center;
	max-height: calc(100vh - 48px);
	max-width: min(92vw, 860px);
	position: relative;
}

.ck-lightbox img {
	border-radius: 8px;
	box-shadow: 0 24px 80px rgba(0, 0, 0, .42);
	max-height: calc(100vh - 110px);
	max-width: 100%;
	object-fit: contain;
}

.ck-lightbox-title {
	color: #fff;
	font-size: 16px;
	font-weight: 800;
	line-height: 1.2;
	text-align: center;
}

.ck-lightbox-close {
	align-items: center;
	background: #fff;
	border: 0;
	border-radius: 999px;
	color: var(--ck-ink);
	cursor: pointer;
	display: inline-flex;
	font-size: 24px;
	font-weight: 800;
	height: 38px;
	justify-content: center;
	line-height: 1;
	position: absolute;
	right: -12px;
	top: -12px;
	width: 38px;
}

.ck-lightbox-close:hover,
.ck-lightbox-close:focus {
	background: #f97316;
	color: #fff;
}

.cbk-hero-upgrade-costs {
	background: #f4f8fd;
	border: 1px solid #dbe7f5;
	border-radius: 8px;
	display: grid;
	gap: 3px;
	grid-template-columns: 1fr;
	padding: 8px;
}

.cbk-hero-upgrade-costs span {
	color: var(--ck-muted);
	font-size: 11px;
	font-weight: 800;
	letter-spacing: .04em;
	text-transform: uppercase;
}

.cbk-hero-upgrade-costs strong {
	color: var(--ck-ink);
	font-size: 12px;
	line-height: 1.2;
}

.cbk-hero-actions {
	display: grid;
	gap: 8px;
	margin-top: 2px;
}

.cbk-hero-actions .ck-button {
	width: 100%;
}

.cbk-hero-max-badge {
	align-items: center;
	background: linear-gradient(135deg, #111827, #334155);
	border-radius: 8px;
	color: #fff;
	display: inline-flex;
	font-size: 12px;
	font-weight: 900;
	justify-content: center;
	min-height: 38px;
	padding: 8px 12px;
}

.cbk-hero-upgrade-modal {
	align-items: center;
	background: rgba(9, 14, 24, .76);
	display: flex;
	inset: 0;
	justify-content: center;
	opacity: 0;
	padding: 18px;
	pointer-events: none;
	position: fixed;
	transition: opacity .16s ease;
	z-index: 99998;
}

.cbk-hero-upgrade-modal.is-open {
	opacity: 1;
	pointer-events: auto;
}

body.cbk-hero-upgrade-modal-open {
	overflow: hidden;
}

.cbk-hero-upgrade-dialog {
	background: #fff;
	border: 1px solid #dbe7f5;
	border-radius: 10px;
	box-shadow: 0 26px 80px rgba(9, 14, 24, .32);
	display: grid;
	gap: 14px;
	max-width: 430px;
	padding: 20px;
	position: relative;
	width: min(100%, 430px);
}

.cbk-hero-upgrade-dialog h3 {
	font-size: 22px;
	line-height: 1.15;
	margin: 0;
}

.cbk-modal-kicker {
	color: var(--ck-brand);
	font-size: 12px;
	font-weight: 900;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.cbk-hero-upgrade-close {
	align-items: center;
	background: #f4f7fb;
	border: 0;
	border-radius: 999px;
	color: var(--ck-ink);
	cursor: pointer;
	display: inline-flex;
	font-size: 22px;
	font-weight: 900;
	height: 34px;
	justify-content: center;
	line-height: 1;
	position: absolute;
	right: 12px;
	top: 12px;
	width: 34px;
}

.cbk-hero-upgrade-stats {
	display: grid;
	gap: 8px;
}

.cbk-hero-upgrade-stats > div {
	align-items: center;
	background: #f8fbff;
	border: 1px solid #dbe7f5;
	border-radius: 8px;
	display: flex;
	justify-content: space-between;
	min-height: 42px;
	padding: 8px 10px;
}

.cbk-hero-upgrade-stats span {
	color: var(--ck-muted);
	font-size: 12px;
	font-weight: 800;
}

.cbk-hero-upgrade-stats strong {
	color: var(--ck-ink);
	font-size: 16px;
}

.cbk-hero-upgrade-note {
	color: var(--ck-muted);
	font-size: 13px;
	margin: 0;
}

.cbk-hero-upgrade-actions {
	display: grid;
	gap: 10px;
	grid-template-columns: 1fr 1fr;
}

.ck-color-pill,
.ck-hero-card-details .ck-color-pill {
	align-items: center;
	border: 1px solid transparent;
	border-radius: 999px;
	color: #fff;
	display: inline-flex;
	font-size: 11px;
	font-weight: 800;
	justify-content: center;
	line-height: 1;
	padding: 5px 8px;
}

.ck-color-pill-red,
.ck-hero-card-details .ck-color-pill-red {
	background: #b42318;
	color: #fff;
}

.ck-color-pill-blue,
.ck-hero-card-details .ck-color-pill-blue {
	background: #175cd3;
	color: #fff;
}

.ck-color-pill-green,
.ck-hero-card-details .ck-color-pill-green {
	background: #067647;
	color: #fff;
}

.ck-color-pill-yellow,
.ck-hero-card-details .ck-color-pill-yellow {
	background: #fdb022;
	color: #1d2327;
}

.ck-color-pill-black,
.ck-hero-card-details .ck-color-pill-black {
	background: #1d2327;
	color: #fff;
}

.ck-color-pill-white,
.ck-hero-card-details .ck-color-pill-white {
	background: #fff;
	border-color: #c3c4c7;
	color: #1d2327;
}

.ck-hero-empty-slot {
	background: #f8fafc;
	border-style: dashed;
	color: var(--ck-ink);
	text-decoration: none;
	transition: border-color .15s ease, box-shadow .15s ease, transform .15s ease;
}

.ck-hero-empty-slot:hover,
.ck-hero-empty-slot:focus {
	border-color: var(--ck-brand);
	box-shadow: 0 8px 22px rgba(24, 33, 47, .08);
	color: var(--ck-ink);
	transform: translateY(-1px);
}

.ck-hero-empty-frame {
	align-items: center;
	aspect-ratio: 3 / 4;
	background: #fff;
	border: 1px dashed var(--ck-line);
	border-radius: 8px;
	color: var(--ck-muted);
	display: flex;
	font-size: 40px;
	font-weight: 700;
	justify-content: center;
	width: 100%;
}

.ck-hero-empty-slot:hover .ck-hero-empty-frame,
.ck-hero-empty-slot:focus .ck-hero-empty-frame {
	border-color: var(--ck-brand);
	color: var(--ck-brand);
}

.ck-hero-roster-footer {
	display: flex;
	justify-content: center;
	margin-top: 16px;
}

.ck-mini-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	margin-top: 4px;
}

.ck-mini-actions .ck-button {
	font-size: 12px;
	min-height: 30px;
	padding: 6px 8px;
	width: auto;
}

.ck-admin-cards {
	display: grid;
	gap: 12px;
	grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
	max-width: 840px;
}

.ck-season-admin .ck-admin-cards {
	max-width: none;
}

.ck-season-admin .card {
	border-color: #dbe7f5;
	border-radius: 8px;
	box-shadow: 0 8px 22px rgba(24, 33, 47, .06);
}

.ck-season-admin textarea.code {
	font-size: 12px;
	min-height: 320px;
}

.ck-admin-page {
	--ck-admin-border: #dcdcde;
	--ck-admin-bg: #fff;
	--ck-admin-soft: #f6f7f7;
	--ck-admin-text: #1d2327;
	--ck-admin-muted: #646970;
	max-width: 1280px;
}

.ck-admin-header,
.ck-admin-panel-header {
	align-items: center;
	display: flex;
	gap: 16px;
	justify-content: space-between;
	margin: 18px 0;
}

.ck-admin-header h1,
.ck-admin-panel-header h2,
.ck-admin-panel h3 {
	color: var(--ck-admin-text);
	margin: 0;
}

.ck-admin-header p,
.ck-admin-panel-header p {
	color: var(--ck-admin-muted);
	margin: 5px 0 0;
	max-width: 720px;
}

.ck-admin-editor,
.ck-admin-panel {
	background: var(--ck-admin-bg);
	border: 1px solid var(--ck-admin-border);
	border-radius: 8px;
	box-shadow: 0 1px 2px rgba(0, 0, 0, .04);
	box-sizing: border-box;
	margin: 18px 0;
	padding: 18px;
}

.ck-admin-editor > .ck-admin-panel-header {
	border-bottom: 1px solid var(--ck-admin-border);
	margin: 0 0 18px;
	padding-bottom: 16px;
}

.ck-admin-editor-grid {
	display: grid;
	gap: 16px;
	grid-template-columns: minmax(0, 1.1fr) minmax(320px, .9fr);
}

.ck-admin-editor-grid .ck-admin-panel {
	box-shadow: none;
	margin: 0;
}

.ck-admin-panel h3 {
	border-bottom: 1px solid var(--ck-admin-border);
	font-size: 14px;
	margin-bottom: 14px;
	padding-bottom: 10px;
}

.ck-admin-field-grid,
.ck-admin-stat-grid {
	display: grid;
	gap: 12px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.ck-admin-field-grid-two {
	grid-template-columns: minmax(0, 1fr) 140px;
}

.ck-admin-stat-grid {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.ck-admin-field-grid label,
.ck-admin-stat-grid label,
.ck-admin-full-field,
.ck-admin-store-panel label,
.ck-admin-image-slot label {
	color: var(--ck-admin-muted);
	display: grid;
	font-size: 12px;
	font-weight: 600;
	gap: 6px;
}

.ck-admin-editor input[type="text"],
.ck-admin-editor input[type="number"],
.ck-admin-editor input:not([type]),
.ck-admin-editor select,
.ck-admin-editor textarea {
	border-color: var(--ck-admin-border);
	border-radius: 6px;
	box-sizing: border-box;
	min-height: 36px;
	width: 100%;
}

.ck-admin-editor textarea {
	resize: vertical;
}

.ck-admin-full-field {
	margin-top: 12px;
}

.ck-admin-image-grid {
	display: grid;
	gap: 12px;
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.ck-admin-image-slot {
	background: var(--ck-admin-soft);
	border: 1px dashed #c3c4c7;
	border-radius: 8px;
	display: grid;
	gap: 10px;
	min-height: 154px;
	padding: 10px;
}

.ck-admin-image-slot img,
.ck-admin-image-slot > span {
	align-items: center;
	aspect-ratio: 1;
	background: #fff;
	border: 1px solid var(--ck-admin-border);
	border-radius: 6px;
	color: var(--ck-admin-muted);
	display: flex;
	justify-content: center;
	object-fit: cover;
	width: 100%;
}

.ck-admin-toggle {
	align-items: center;
	background: var(--ck-admin-soft);
	border: 1px solid var(--ck-admin-border);
	border-radius: 8px;
	display: flex !important;
	gap: 8px;
	margin-bottom: 14px;
	padding: 12px;
}

.ck-admin-toggle input {
	margin: 0;
	width: auto;
}

.ck-admin-table td,
.ck-admin-table th {
	vertical-align: middle;
}

.ck-admin-table td small {
	color: var(--ck-admin-muted);
	display: block;
	margin-top: 3px;
}

.ck-admin-hero-cell {
	align-items: center;
	display: flex;
	gap: 10px;
}

.ck-admin-hero-cell small {
	color: var(--ck-admin-muted);
	display: block;
	margin-top: 3px;
}

.ck-admin-hero-thumb {
	align-items: center;
	border-radius: 8px;
	display: inline-flex;
	flex: 0 0 auto;
	font-weight: 800;
	height: 46px;
	justify-content: center;
	margin-right: 0;
	object-fit: cover;
	width: 46px;
}

.ck-admin-hero-thumb-fallback {
	border: 1px solid rgba(0, 0, 0, .08);
}

.ck-admin-pill,
.ck-admin-status {
	background: #f0f0f1;
	border-radius: 999px;
	color: #3c434a;
	display: inline-block;
	font-size: 11px;
	font-weight: 700;
	line-height: 1;
	margin: 0 4px 5px 0;
	padding: 5px 8px;
}

.ck-admin-color-pill {
	border: 1px solid transparent;
	min-width: 42px;
	text-align: center;
}

.ck-admin-color-red {
	background: #b42318;
	color: #fff;
}

.ck-admin-color-blue {
	background: #175cd3;
	color: #fff;
}

.ck-admin-color-green {
	background: #067647;
	color: #fff;
}

.ck-admin-color-yellow {
	background: #fdb022;
	color: #1d2327;
}

.ck-admin-color-black {
	background: #1d2327;
	color: #fff;
}

.ck-admin-color-white {
	background: #fff;
	border-color: #c3c4c7;
	color: #1d2327;
}

.ck-admin-status-live {
	background: #e7f7ed;
	color: #087443;
}

.ck-admin-count {
	align-items: center;
	background: var(--ck-admin-soft);
	border-radius: 999px;
	color: var(--ck-admin-muted);
	display: inline-flex;
	font-weight: 700;
	justify-content: center;
	min-width: 32px;
	padding: 7px 10px;
}

.ck-admin-statline {
	font-weight: 700;
}

.ck-admin-statline span {
	margin-left: 8px;
}

.ck-admin-row-actions {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
}

.ck-admin-row-actions form {
	margin: 0;
}

@media (max-width: 1080px) {
	.ck-admin-editor-grid,
	.ck-admin-field-grid,
	.ck-admin-stat-grid,
	.ck-admin-image-grid {
		grid-template-columns: 1fr;
	}

	.ck-hero-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.ck-hero-grid-dashboard,
	.ck-hero-grid-four {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 640px) {
	.cbk-hero-upgrade-actions {
		grid-template-columns: 1fr;
	}

	.cbk-hero-upgrade-dialog {
		padding: 18px;
	}

	.ck-table {
		display: block;
		overflow-x: auto;
	}

	.ck-actions,
	.ck-inline-form,
	.ck-search,
	.ck-create-fields {
		align-items: stretch;
		flex-direction: column;
		grid-template-columns: 1fr;
	}

	.ck-button {
		width: 100%;
	}

	.ck-kingdom-heading,
	.ck-collection-panel {
		align-items: stretch;
		justify-items: stretch;
		text-align: left;
	}

	.ck-kingdom-heading {
		flex-direction: column;
	}

	.ck-hero-grid,
	.ck-hero-grid-dashboard,
	.ck-hero-grid-four {
		grid-template-columns: 1fr;
	}
}

.ck-auction-items-grid {
	grid-template-columns: repeat(5, minmax(0, 1fr));
}

.ck-auction-item-card {
	align-content: start;
	background: linear-gradient(180deg, #ffffff, #fffaf0);
}

.ck-auction-pass-icon {
	align-items: center;
	aspect-ratio: 3 / 4;
	background: linear-gradient(135deg, #fbbf24, #f97316);
	border-radius: 8px;
	color: #fff;
	display: flex;
	font-size: 42px;
	font-weight: 900;
	justify-content: center;
	letter-spacing: 0;
	text-shadow: 0 2px 6px rgba(120, 53, 15, .28);
}

.ck-promo-price {
	display: grid;
	gap: 4px;
}

.ck-promo-price del {
	color: var(--ck-muted);
	font-size: 13px;
	font-weight: 700;
}
.ck-auction-item-card {
	position: relative;
}

.ck-sale-badge {
	background: #d92d20;
	border-radius: 999px;
	box-shadow: 0 8px 18px rgba(217, 45, 32, .28);
	color: #fff;
	font-size: 13px;
	font-weight: 900;
	letter-spacing: 0;
	line-height: 1;
	padding: 9px 14px;
	position: absolute;
	right: 12px;
	text-transform: uppercase;
	top: 12px;
	z-index: 2;
}

.ck-promo-price {
	color: #b42318;
	font-size: 18px;
}

.ck-promo-price::before {
	background: #fee4e2;
	border: 1px solid #fecdca;
	border-radius: 6px;
	color: #b42318;
	content: "LIMITED TIME SALE";
	display: inline-flex;
	font-size: 12px;
	font-weight: 900;
	justify-content: center;
	line-height: 1;
	margin-bottom: 2px;
	padding: 7px 9px;
	text-transform: uppercase;
}
.ck-war-header {
	align-items: center;
	display: flex;
	gap: 16px;
	justify-content: space-between;
}

.ck-war-header h2,
.ck-war-header p {
	margin: 0;
}

.ck-war-header p {
	color: var(--ck-muted);
	margin-top: 4px;
}

.ck-saved-groups {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-bottom: 12px;
}

.ck-war-hero-picker {
	display: grid;
	gap: 14px;
	grid-template-columns: repeat(auto-fill, minmax(150px, 150px));
	justify-content: start;
	margin: 12px 0;
}

.ck-war-hero {
	align-content: start;
	border: 1px solid var(--ck-line);
	border-radius: 8px;
	cursor: pointer;
	display: grid;
	gap: 8px;
	grid-template-columns: 1fr;
	max-width: 150px;
	padding: 8px;
	position: relative;
	text-align: left;
}

.ck-war-hero input[type="checkbox"] {
	height: 1px;
	opacity: 0;
	pointer-events: none;
	position: absolute;
	width: 1px;
}

.ck-war-hero:has(input:checked) {
	background: #fff7ed;
	border-color: #fb923c;
	box-shadow: 0 0 0 2px rgba(251, 146, 60, .18);
}

.ck-war-hero img,
.ck-war-hero .ck-avatar {
	border-radius: 8px;
	height: 200px;
	object-fit: cover;
	width: 150px;
}

.ck-war-hero small,
.ck-group-card small {
	color: var(--ck-muted);
	display: block;
	font-size: 12px;
	line-height: 1.35;
}

.ck-war-preview {
	display: grid;
	gap: 10px;
	grid-template-columns: repeat(auto-fit, minmax(130px, 1fr));
	margin: 14px 0;
}

.ck-war-preview > div {
	border: 1px solid var(--ck-line);
	border-radius: 8px;
	padding: 12px;
}

.ck-war-preview span {
	color: var(--ck-muted);
	display: block;
	font-size: 12px;
}

.ck-war-preview strong {
	display: block;
	font-size: 22px;
	margin-top: 4px;
}

.ck-battle-live {
	background: #111827;
	border-radius: 8px;
	color: #fff;
	font-size: 18px;
	font-weight: 800;
	margin: 12px 0;
	min-height: 58px;
	padding: 18px;
	text-align: center;
}

.ck-battle-live .cbk-battle-timeline {
	margin: 0 auto;
	max-width: 760px;
	text-align: left;
}

.cbk-battle-timeline {
	background: linear-gradient(180deg, #111827, #182236);
	border: 1px solid rgba(255, 255, 255, .1);
	border-radius: 10px;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, .05), 0 14px 30px rgba(17, 24, 39, .12);
	color: #e5edf8;
	display: grid;
	gap: 8px;
	padding: 12px;
}

.cbk-battle-message {
	align-items: center;
	animation: cbkBattleFade .22s ease both;
	background: rgba(255, 255, 255, .06);
	border: 1px solid rgba(255, 255, 255, .08);
	border-left: 3px solid #38bdf8;
	border-radius: 8px;
	display: grid;
	font-size: 13px;
	font-weight: 800;
	gap: 4px;
	line-height: 1.35;
	padding: 9px 11px;
}

.cbk-battle-message-epic {
	background: linear-gradient(135deg, rgba(251, 191, 36, .22), rgba(255, 255, 255, .07));
	border-color: rgba(251, 191, 36, .5);
	border-left-color: #fbbf24;
	color: #fff7d6;
}

.cbk-battle-message-result {
	background: linear-gradient(135deg, rgba(34, 197, 94, .2), rgba(255, 255, 255, .08));
	border-color: rgba(34, 197, 94, .44);
	border-left-color: #22c55e;
	color: #ecfdf3;
	font-size: 14px;
}

.cbk-battle-phase-label {
	color: #93c5fd;
	display: block;
	font-size: 10px;
	font-weight: 900;
	letter-spacing: .08em;
	line-height: 1;
	text-transform: uppercase;
}

.ck-table .cbk-battle-timeline {
	box-shadow: none;
	min-width: min(560px, 100%);
}

@keyframes cbkBattleFade {
	from {
		opacity: 0;
		transform: translateY(4px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}

.ck-battle-result {
	align-items: center;
	border-radius: 8px;
	display: grid;
	gap: 14px;
	justify-items: center;
	margin: 14px 0;
	padding: 24px;
	text-align: center;
}

.ck-battle-result strong {
	font-size: 42px;
	line-height: 1;
}

.ck-battle-result.is-win {
	background:
        radial-gradient(
            circle at center,
            rgba(34,197,94,.25),
            rgba(34,197,94,.05)
        );
        
    border:2px solid rgba(34,197,94,.4);
    
    box-shadow:
        0 0 30px rgba(34,197,94,.25);
        
    border-radius:20px;
    
    padding:40px;
    
    text-align:center;
}

.ck-battle-result.is-loss {
	background: #fee4e2;
	color: #b42318;
}

.ck-group-list {
	display: grid;
	gap: 12px;
	grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
}

.ck-group-card {
	border: 1px solid var(--ck-line);
	border-radius: 8px;
	display: grid;
	gap: 8px;
	padding: 12px;
}

.ck-group-card h4,
.ck-group-card p {
	margin: 0;
}
.ck-war-hero .ck-star-rating {
	color: #f5b301;
	display: flex;
	font-size: 13px;
	gap: 1px;
	line-height: 1;
	margin-bottom: 3px;
}

/* Fantasy war command center */
.ck-war-command-page {
	--ck-war-bg: #0d1522;
	--ck-war-panel: #121d2d;
	--ck-war-panel-soft: #172437;
	--ck-war-line: rgba(198, 218, 235, .18);
	--ck-war-text: #f8fafc;
	--ck-war-muted: #b6c5d8;
	--ck-war-gold: #f4c15d;
	--ck-war-teal: #38bdf8;
	background:
		radial-gradient(circle at 12% 0, rgba(56, 189, 248, .18), transparent 30%),
		linear-gradient(180deg, #0b1220, #111827 58%, #0a0f19);
	border-radius: 12px;
	box-shadow: 0 22px 60px rgba(13, 21, 34, .2);
	gap: 16px;
	padding: 18px;
}

.ck-war-command-page .ck-kingdom-back-link {
	background: rgba(255, 255, 255, .08);
	border: 1px solid var(--ck-war-line);
	border-radius: 999px;
	color: #e0f2fe;
	padding: 9px 12px;
	width: fit-content;
}

.ck-war-command-page .ck-kingdom-return .ck-button {
	background: #1f2937;
	border: 1px solid var(--ck-war-line);
	color: #fff;
}

.ck-war-command-hero,
.ck-war-panel {
	background: linear-gradient(180deg, rgba(18, 29, 45, .96), rgba(15, 23, 42, .96));
	border: 1px solid var(--ck-war-line);
	border-radius: 12px;
	box-shadow: 0 14px 34px rgba(0, 0, 0, .24);
	color: var(--ck-war-text);
}

.ck-war-command-hero {
	align-items: center;
	display: grid;
	gap: 18px;
	grid-template-columns: minmax(0, 1fr) minmax(360px, .8fr);
	min-height: 230px;
	overflow: hidden;
	padding: 28px;
	position: relative;
}

.ck-war-command-hero::after {
	background: radial-gradient(circle, rgba(244, 193, 93, .18), transparent 62%);
	content: "";
	height: 260px;
	position: absolute;
	right: -90px;
	top: -90px;
	width: 260px;
}

.ck-war-hero-copy,
.ck-war-stat-grid,
.ck-war-target-summary {
	position: relative;
	z-index: 1;
}

.ck-war-kicker {
	color: var(--ck-war-gold);
	display: inline-flex;
	font-size: 11px;
	font-weight: 900;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.ck-war-hero-copy h2 {
	color: #fff;
	font-size: clamp(34px, 5vw, 58px);
	letter-spacing: 0;
	line-height: .95;
	margin: 8px 0 10px;
}

.ck-war-hero-copy p {
	color: #dbeafe;
	font-size: 15px;
	margin: 0;
	max-width: 620px;
}

.ck-war-stat-grid {
	display: grid;
	gap: 10px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.ck-war-stat-grid > div,
.ck-war-modal-stats > div {
	background: rgba(255, 255, 255, .08);
	border: 1px solid var(--ck-war-line);
	border-radius: 10px;
	padding: 12px;
}

.ck-war-stat-grid span,
.ck-war-modal-stats span,
.ck-war-card-stats span,
.ck-war-target-summary span {
	color: var(--ck-war-muted);
	display: block;
	font-size: 12px;
	font-weight: 800;
}

.ck-war-stat-grid strong,
.ck-war-modal-stats strong {
	color: #fff;
	display: block;
	font-size: 24px;
	line-height: 1.1;
	margin-top: 4px;
}

.ck-war-stat-grid small {
	color: var(--ck-war-muted);
	display: block;
	font-size: 11px;
	font-weight: 800;
	margin-top: 4px;
}

.ck-war-top-grid,
.ck-war-layout {
	align-items: start;
	display: grid;
	gap: 16px;
	grid-template-columns: minmax(0, 1.35fr) minmax(280px, .65fr);
}

.ck-war-panel {
	padding: 18px;
}

.ck-war-panel h3,
.ck-war-section-head h3 {
	color: #fff;
	font-size: 17px;
	letter-spacing: .06em;
	line-height: 1.15;
	margin: 0;
	text-transform: uppercase;
}

.ck-war-panel p,
.ck-war-section-head p {
	color: var(--ck-war-muted);
	margin: 5px 0 0;
}

.ck-war-rewards-teaser,
.ck-war-scout-panel,
.ck-war-report {
	display: grid;
	gap: 13px;
	align-content: start;
}

.ck-war-scout-panel {
	align-self: start;
}

.ck-war-reward-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.ck-war-reward-chips span,
.ck-war-color-badge,
.ck-war-difficulty {
	background: rgba(244, 193, 93, .14);
	border: 1px solid rgba(244, 193, 93, .3);
	border-radius: 999px;
	color: #ffe9ad;
	display: inline-flex;
	font-size: 12px;
	font-weight: 900;
	line-height: 1;
	padding: 7px 9px;
}

.ck-war-search {
	display: grid;
	gap: 10px;
	grid-template-columns: minmax(0, 1fr) auto;
}

.ck-war-search input {
	background: rgba(255, 255, 255, .96);
	border: 1px solid transparent;
	border-radius: 8px;
	min-height: 42px;
}

.ck-war-button {
	align-items: center;
	border: 1px solid transparent;
	border-radius: 8px;
	cursor: pointer;
	display: inline-flex;
	font-weight: 900;
	justify-content: center;
	min-height: 40px;
	padding: 9px 14px;
	text-decoration: none;
	transition: transform .15s ease, box-shadow .15s ease, border-color .15s ease;
}

.ck-war-button:hover,
.ck-war-button:focus {
	transform: translateY(-1px);
}

.ck-war-button-primary {
	background: linear-gradient(135deg, #d97706, #f4c15d);
	box-shadow: 0 10px 24px rgba(217, 119, 6, .22);
	color: #111827;
}

.ck-war-button-primary:hover,
.ck-war-button-primary:focus {
	color: #111827;
}

.ck-war-button-secondary {
	background: rgba(255, 255, 255, .08);
	border-color: var(--ck-war-line);
	color: #e0f2fe;
}

.ck-war-button-secondary:hover,
.ck-war-button-secondary:focus {
	border-color: rgba(56, 189, 248, .52);
	color: #fff;
}

.ck-war-enemy-panel {
	min-width: 0;
}

.ck-war-section-head {
	align-items: start;
	display: flex;
	gap: 12px;
	justify-content: space-between;
	margin-bottom: 14px;
}

.ck-war-enemy-grid {
	display: grid;
	gap: 12px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.ck-war-enemy-card {
	background: linear-gradient(180deg, rgba(255, 255, 255, .08), rgba(255, 255, 255, .04));
	border: 1px solid var(--ck-war-line);
	border-radius: 12px;
	display: grid;
	gap: 12px;
	grid-template-columns: 120px minmax(0, 1fr);
	padding: 14px;
	transition: transform .15s ease, box-shadow .15s ease, border-color .15s ease;
}

.ck-war-enemy-card:hover,
.ck-war-enemy-card:focus-within {
	border-color: rgba(244, 193, 93, .52);
	box-shadow: 0 18px 38px rgba(0, 0, 0, .22);
	transform: translateY(-2px);
}

.ck-war-emblem {
	align-items: center;
	aspect-ratio: 1;
	background: linear-gradient(135deg, rgba(56, 189, 248, .18), rgba(244, 193, 93, .16));
	border: 1px solid var(--ck-war-line);
	border-radius: 14px;
	color: #fff;
	display: flex;
	font-size: 12px;
	font-weight: 900;
	justify-content: center;
	min-height: 58px;
	text-transform: uppercase;
}

.ck-war-color-red .ck-war-emblem { background: linear-gradient(135deg, #7f1d1d, #ef4444); }
.ck-war-color-blue .ck-war-emblem { background: linear-gradient(135deg, #0f2f5f, #38bdf8); }
.ck-war-color-green .ck-war-emblem { background: linear-gradient(135deg, #064e3b, #22c55e); }
.ck-war-color-yellow .ck-war-emblem { background: linear-gradient(135deg, #92400e, #facc15); color: #1f2937; }
.ck-war-color-black .ck-war-emblem { background: linear-gradient(135deg, #030712, #374151); }
.ck-war-color-white .ck-war-emblem { background: linear-gradient(135deg, #f8fafc, #cbd5e1); color: #111827; }

.ck-war-enemy-champion {
	align-self: start;
	background: #07111f;
	border: 1px solid rgba(56, 189, 248, .36);
	border-radius: 10px;
	box-shadow: inset 0 0 0 1px rgba(244, 193, 93, .08);
	overflow: hidden;
	width: 120px;
}

.ck-war-enemy-champion img,
.ck-war-enemy-champion-image {
	display: block;
	height: 100%;
	object-fit: cover;
	object-position: center center;
	width: 100%;
}

.ck-war-enemy-champion .ck-war-emblem {
	border: 0;
	border-radius: 0;
	height: 100%;
	min-height: 0;
	width: 100%;
}

.ck-war-enemy-content {
	display: grid;
	gap: 10px;
	min-width: 0;
}

.ck-war-enemy-main {
	display: grid;
	gap: 7px;
}

.ck-war-enemy-main h4 {
	color: #fff;
	font-size: 19px;
	line-height: 1.1;
	margin: 0;
}

.ck-war-card-stats {
	display: grid;
	gap: 8px;
	grid-template-columns: repeat(1, minmax(0, 1fr));
}

.ck-war-card-stats > div {
	background: rgba(255, 255, 255, .06);
	border: 1px solid rgba(255, 255, 255, .08);
	border-radius: 9px;
	padding: 10px;
}

.ck-war-card-stats strong {
	color: #fff;
	display: block;
	font-size: 17px;
	margin-top: 3px;
}

.ck-war-difficulty-easy { color: #bbf7d0; border-color: rgba(34, 197, 94, .42); background: rgba(34, 197, 94, .14); }
.ck-war-difficulty-balanced { color: #bae6fd; border-color: rgba(56, 189, 248, .42); background: rgba(56, 189, 248, .14); }
.ck-war-difficulty-hard { color: #fecaca; border-color: rgba(239, 68, 68, .42); background: rgba(239, 68, 68, .14); }
.ck-war-difficulty-unknown { color: #e5e7eb; border-color: rgba(229, 231, 235, .24); background: rgba(229, 231, 235, .09); }

.ck-war-loot {
	background: rgba(244, 193, 93, .1);
	border: 1px solid rgba(244, 193, 93, .18);
	border-radius: 8px;
	color: #ffe9ad !important;
	font-size: 12px;
	font-weight: 900;
	margin: 0 !important;
	padding: 9px;
}

.ck-war-empty {
	background: rgba(255, 255, 255, .06);
	border: 1px dashed var(--ck-war-line);
	border-radius: 12px;
	color: var(--ck-war-muted);
	grid-column: 1 / -1;
	padding: 18px;
	text-align: center;
}

.ck-war-report-list {
	display: grid;
	gap: 8px;
}

.ck-war-report-head {
	align-items: center;
	display: flex;
	gap: 10px;
	justify-content: space-between;
}

.ck-war-report-link {
	background: rgba(255, 255, 255, .08);
	border: 1px solid var(--ck-war-line);
	border-radius: 999px;
	color: #e0f2fe;
	display: inline-flex;
	font-size: 11px;
	font-weight: 900;
	line-height: 1;
	padding: 8px 10px;
	text-decoration: none;
	white-space: nowrap;
}

.ck-war-report-link:hover,
.ck-war-report-link:focus {
	border-color: rgba(244, 193, 93, .5);
	color: #fff7d6;
}

.ck-war-report-item {
	background: rgba(255, 255, 255, .06);
	border: 1px solid rgba(255, 255, 255, .08);
	border-radius: 9px;
	display: grid;
	gap: 3px;
	padding: 10px;
}

.ck-war-report-item strong {
	color: var(--ck-war-gold);
	font-size: 12px;
	text-transform: uppercase;
}

.ck-war-report-item span {
	color: var(--ck-war-muted);
	font-size: 12px;
}

.ck-war-target-summary {
	align-items: center;
	background: rgba(255, 255, 255, .08);
	border: 1px solid var(--ck-war-line);
	border-radius: 14px;
	display: grid;
	gap: 12px;
	grid-template-columns: 72px minmax(0, 1fr);
	padding: 14px;
}

.ck-war-target-tier-emblem {
	align-items: center;
	aspect-ratio: 1;
	display: flex;
	justify-content: center;
	min-width: 0;
	overflow: visible;
}

.ck-war-target-tier-emblem .cbk-tier-image,
.ck-war-target-tier-emblem img.cbk-tier-image {
	background: transparent;
	border: 0;
	border-radius: 0;
	box-shadow: none;
	display: block;
	height: 64px;
	max-height: 64px;
	max-width: 64px;
	object-fit: contain;
	padding: 0;
	width: 64px;
}

.ck-war-target-tier-emblem .cbk-tier-image img {
	height: 100%;
	object-fit: contain;
	width: 100%;
}

.ck-war-target-summary strong {
	color: #fff;
	display: block;
	font-size: 22px;
	line-height: 1.1;
	margin-top: 3px;
}

.ck-war-target-summary em {
	color: var(--ck-war-gold);
	display: block;
	font-style: normal;
	font-weight: 900;
	margin-top: 4px;
}

.cbk-rankings-actions{
    display: flex;
    justify-content: center;
	text-align: center;
}

.ck-rakings-daily-bonus{
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 6px 18px;
    border-radius: 20px;
    font-size: 14px;
    font-weight: 700;

    color: #ffffff;
    border: 1px solid rgba(255,255,255,0.15);

    background: linear-gradient(
        135deg,
        #4fd1ff 0%,
        #35e0c8 50%,
        #28c76f 100%
    );

    box-shadow:
        0 0 12px rgba(79, 209, 255, 0.25),
        0 0 20px rgba(40, 199, 111, 0.15);

    transition: all 0.2s ease;
}

.ck-rakings-daily-bonus:hover{
    transform: translateY(-1px);
    filter: brightness(1.08);
    box-shadow:
        0 0 16px rgba(79, 209, 255, 0.35),
        0 0 24px rgba(40, 199, 111, 0.25);
}

.ck-war-command-page .ck-war-hero {
	align-self: start;
	background: rgba(255, 255, 255, .06);
	border-color: var(--ck-war-line);
	box-sizing: border-box;
	color: #fff;
	max-width: none;
	min-height: 249px;
	width: 100%;
}

.ck-war-command-page .ck-war-hero img,
.ck-war-command-page .ck-war-hero .ck-avatar {
	aspect-ratio: 3 / 4;
	display: block;
	height: auto;
	max-height: 188px;
	width: 100%;
}

.ck-war-command-page .ck-war-hero > span {
	display: grid;
	gap: 1px;
	min-height: 46px;
}

.ck-war-command-page .ck-war-hero:has(input:checked) {
	background: rgba(244, 193, 93, .16);
	border-color: rgba(244, 193, 93, .65);
}

.ck-war-command-page .ck-war-hero small {
	color: var(--ck-war-muted);
}

.ck-war-command-page .ck-war-preview > div {
	background: rgba(255, 255, 255, .07);
	border-color: var(--ck-war-line);
	color: #fff;
}

.ck-war-command-page .ck-war-preview span {
	color: var(--ck-war-muted);
}

.ck-war-actions {
	margin-top: 12px;
}

.ck-war-modal {
	align-items: center;
	background: rgba(5, 10, 18, .78);
	display: flex;
	inset: 0;
	justify-content: center;
	opacity: 0;
	padding: 18px;
	pointer-events: none;
	position: fixed;
	transition: opacity .16s ease;
	z-index: 99999;
}

.ck-war-modal.is-open {
	opacity: 1;
	pointer-events: auto;
}

.ck-war-modal-dialog {
	background: linear-gradient(180deg, #121d2d, #0f172a);
	border: 1px solid rgba(244, 193, 93, .35);
	border-radius: 14px;
	box-shadow: 0 28px 90px rgba(0, 0, 0, .5);
	color: #fff;
	display: grid;
	gap: 14px;
	max-height: calc(100vh - 36px);
	max-width: 520px;
	overflow: auto;
	padding: 22px;
	position: relative;
	width: min(100%, 520px);
}

.ck-war-modal-dialog h3 {
	color: #fff;
	font-size: 25px;
	line-height: 1.1;
	margin: 0;
}

.ck-war-modal-close {
	background: rgba(255, 255, 255, .08);
	border: 1px solid var(--ck-war-line);
	border-radius: 999px;
	color: #fff;
	cursor: pointer;
	font-size: 24px;
	height: 38px;
	line-height: 1;
	position: absolute;
	right: 14px;
	top: 14px;
	width: 38px;
}

.ck-war-modal-stats {
	display: grid;
	gap: 10px;
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.ck-war-modal-rewards {
	background: rgba(244, 193, 93, .12);
	border: 1px solid rgba(244, 193, 93, .22);
	border-radius: 10px;
	color: #ffe9ad;
	font-weight: 900;
	margin: 0;
	padding: 11px;
}

.ck-war-modal-actions {
	display: flex;
	gap: 10px;
	justify-content: flex-end;
}

body.ck-war-modal-open {
	overflow: hidden;
}

/* CardBerus Kingdom World Store */
.cbk-store-page {
	--cbk-store-bg: #0d1522;
	--cbk-store-panel: #121d2d;
	--cbk-store-line: rgba(198, 218, 235, .18);
	--cbk-store-muted: #b6c5d8;
	--cbk-store-gold: #f4c15d;
	background:
		radial-gradient(circle at 12% 0, rgba(56, 189, 248, .15), transparent 32%),
		linear-gradient(180deg, #0b1220, #111827 62%, #0a0f19);
	border-radius: 12px;
	box-shadow: 0 22px 60px rgba(13, 21, 34, .2);
	color: #f8fafc;
	padding: 18px;
}

.cbk-store-page .ck-kingdom-back-link,
.cbk-store-page .ck-kingdom-return .ck-button {
	background: rgba(255, 255, 255, .08);
	border: 1px solid var(--cbk-store-line);
	border-radius: 999px;
	color: #e0f2fe;
	padding: 9px 12px;
	width: fit-content;
}

.cbk-store-hero,
.cbk-resource-bar,
.cbk-store-panel {
	background: linear-gradient(180deg, rgba(18, 29, 45, .96), rgba(15, 23, 42, .96));
	border: 1px solid var(--cbk-store-line);
	border-radius: 12px;
	box-shadow: 0 14px 34px rgba(0, 0, 0, .24);
}

.cbk-store-hero {
	align-items: center;
	display: grid;
	gap: 18px;
	grid-template-columns: minmax(0, 1fr) auto;
	padding: 28px;
}

.cbk-store-kicker {
	color: var(--cbk-store-gold);
	display: inline-flex;
	font-size: 11px;
	font-weight: 900;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.cbk-store-hero h2 {
	color: #fff;
	font-size: clamp(34px, 5vw, 58px);
	letter-spacing: 0;
	line-height: .95;
	margin: 8px 0 10px;
}

.cbk-store-hero p {
	color: #dbeafe;
	margin: 0;
	max-width: 680px;
}

.cbk-store-refresh {
	background: rgba(255, 255, 255, .08);
	border: 1px solid var(--cbk-store-line);
	border-radius: 12px;
	display: grid;
	gap: 5px;
	min-width: 190px;
	padding: 13px;
	text-align: center;
}

.cbk-store-refresh span,
.cbk-resource-bar span,
.cbk-section-head p {
	color: var(--cbk-store-muted);
	font-size: 12px;
	font-weight: 800;
}

.cbk-store-refresh strong {
	color: #fff;
	font-size: 24px;
}

.cbk-resource-bar {
	display: grid;
	gap: 10px;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	padding: 14px;
}

.cbk-resource-bar > div {
	background: rgba(255, 255, 255, .07);
	border: 1px solid rgba(255, 255, 255, .08);
	border-radius: 10px;
	padding: 10px;
}

.cbk-resource-bar strong {
	color: #fff;
	display: block;
	font-size: 18px;
	margin-top: 4px;
}

.cbk-store-tabs {
	background: rgba(255, 255, 255, .06);
	border: 1px solid var(--cbk-store-line);
	border-radius: 12px;
	display: flex;
	gap: 8px;
	overflow-x: auto;
	padding: 8px;
}

.cbk-store-tabs button {
	background: transparent;
	border: 1px solid transparent;
	border-radius: 9px;
	color: #dbeafe;
	cursor: pointer;
	flex: 0 0 auto;
	font-weight: 900;
	min-height: 38px;
	padding: 8px 13px;
}

.cbk-store-tabs button.is-active,
.cbk-store-tabs button:hover,
.cbk-store-tabs button:focus {
	background: linear-gradient(135deg, #d97706, #f4c15d);
	color: #111827;
}

.cbk-store-panel {
	display: none;
	padding: 18px;
}

.cbk-store-panel.is-active {
	display: block;
}

.cbk-section-head {
	align-items: start;
	display: flex;
	justify-content: space-between;
	margin-bottom: 14px;
}

.cbk-section-head h3 {
	color: #fff;
	font-size: 17px;
	letter-spacing: .06em;
	line-height: 1.15;
	margin: 0;
	text-transform: uppercase;
}

.cbk-section-head p {
	margin: 5px 0 0;
}

.cbk-feature-grid,
.cbk-product-grid {
	display: grid;
	gap: 14px;
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.cbk-product-grid {
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.cbk-product-card {
	background: linear-gradient(180deg, rgba(255, 255, 255, .08), rgba(255, 255, 255, .04));
	border: 1px solid var(--cbk-store-line);
	border-radius: 12px;
	display: grid;
	gap: 12px;
	overflow: hidden;
	padding: 12px;
	position: relative;
	transition: transform .15s ease, box-shadow .15s ease, border-color .15s ease;
}

.cbk-product-card:hover,
.cbk-product-card:focus-within {
	border-color: rgba(244, 193, 93, .5);
	box-shadow: 0 18px 38px rgba(0, 0, 0, .22);
	transform: translateY(-2px);
}

.cbk-product-media {
	aspect-ratio: 3 / 4;
	background: rgba(255, 255, 255, .08);
	border-radius: 10px;
	overflow: hidden;
}

.cbk-product-media .ck-image-lightbox-trigger,
.cbk-product-media .cbk-hero-image-wrap {
	height: 100%;
}

.cbk-product-media img,
.cbk-product-media .ck-hero-image {
	height: 100%;
	max-height: none;
	object-fit: cover;
	width: 100%;
}

.cbk-store-placeholder {
	align-items: center;
	color: #fff;
	display: flex;
	font-size: 18px;
	font-weight: 900;
	justify-content: center;
	text-align: center;
}

.cbk-product-body {
	display: grid;
	gap: 9px;
}

.cbk-product-title-row {
	align-items: start;
	display: flex;
	gap: 8px;
	justify-content: space-between;
}

.cbk-product-title-row h4 {
	color: #fff;
	font-size: 18px;
	line-height: 1.12;
	margin: 0;
}

.cbk-product-title-row span,
.cbk-card-badge,
.cbk-owned-pill {
	align-items: center;
	background: rgba(244, 193, 93, .14);
	border: 1px solid rgba(244, 193, 93, .3);
	border-radius: 999px;
	color: #ffe9ad;
	display: inline-flex;
	font-size: 11px;
	font-weight: 900;
	line-height: 1;
	padding: 6px 8px;
	white-space: nowrap;
}

.cbk-owned-pill {
	align-self: center;
	min-height: 44px;
}

.cbk-card-badge {
	left: 12px;
	position: absolute;
	top: 12px;
	z-index: 2;
}

.cbk-product-meta {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
}

.cbk-product-meta > span:not(.ck-color-pill) {
	background: rgba(255, 255, 255, .08);
	border-radius: 999px;
	color: #dbeafe;
	font-size: 11px;
	font-weight: 900;
	line-height: 1;
	padding: 6px 8px;
}

.cbk-starline .ck-star-rating {
	display: inline-flex;
}

.cbk-power-line {
	align-items: center;
	background: rgba(56, 189, 248, .12);
	border: 1px solid rgba(56, 189, 248, .22);
	border-radius: 9px;
	display: flex;
	justify-content: space-between;
	padding: 8px 10px;
}

.cbk-power-line span,
.cbk-skill-preview,
.cbk-total-cost {
	color: var(--cbk-store-muted);
	font-size: 12px;
}

.cbk-power-line strong {
	color: #fff;
	font-size: 19px;
}

.cbk-stat-grid {
	display: grid;
	gap: 6px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.cbk-stat-grid span {
	background: rgba(255, 255, 255, .07);
	border: 1px solid rgba(255, 255, 255, .08);
	border-radius: 8px;
	color: #e5edf8;
	font-size: 12px;
	font-weight: 800;
	padding: 7px;
}

.cbk-skill-preview {
	margin: 0;
}

.cbk-product-footer,
.cbk-unit-form {
	display: grid;
	gap: 9px;
}

.cbk-product-card .ck-button,
.cbk-product-card button.ck-button,
.cbk-store-cta {
	box-sizing: border-box;
	font-size: 14px;
	min-height: 42px;
	padding: 10px 14px;
	width: 100%;
}

.cbk-product-card .ck-button[disabled],
.cbk-product-card button[disabled] {
	cursor: not-allowed;
	opacity: .72;
}

.cbk-price {
	color: #ffe9ad;
	font-size: 15px;
}

.cbk-price del {
	color: #94a3b8;
	display: block;
	font-size: 12px;
}

.cbk-rarity-common { border-color: #94a3b8; }
.cbk-rarity-rare { border-color: #22c55e; }
.cbk-rarity-epic { border-color: #a855f7; box-shadow: inset 0 0 0 1px rgba(168, 85, 247, .16); }
.cbk-rarity-legendary { border-color: #f97316; box-shadow: inset 0 0 0 1px rgba(249, 115, 22, .18); }
.cbk-rarity-mythic { border-color: #ef4444; box-shadow: inset 0 0 0 1px rgba(239, 68, 68, .18); }
.cbk-rarity-divine { border-color: #f4c15d; box-shadow: inset 0 0 0 1px rgba(244, 193, 93, .22); }

.cbk-qty-control {
	display: grid;
	grid-template-columns: 38px minmax(0, 1fr) 38px;
}

.cbk-qty-control button,
.cbk-qty-quick button {
	background: rgba(255, 255, 255, .08);
	border: 1px solid var(--cbk-store-line);
	color: #fff;
	cursor: pointer;
	font-weight: 900;
	min-height: 36px;
}

.cbk-qty-control button:first-child {
	border-radius: 8px 0 0 8px;
}

.cbk-qty-control button:last-child {
	border-radius: 0 8px 8px 0;
}

.cbk-qty-control input {
	border-radius: 0;
	text-align: center;
}

.cbk-qty-quick {
	display: grid;
	gap: 6px;
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.cbk-qty-quick button {
	border-radius: 8px;
	font-size: 12px;
}

.cbk-store-empty {
	background: rgba(255, 255, 255, .06);
	border: 1px dashed var(--cbk-store-line);
	border-radius: 12px;
	color: var(--cbk-store-muted);
	grid-column: 1 / -1;
	padding: 22px;
	text-align: center;
}

.cbk-deal-rewards {
	display: grid;
	gap: 7px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.cbk-deal-rewards span {
	align-items: center;
	background: rgba(244, 193, 93, .12);
	border: 1px solid rgba(244, 193, 93, .22);
	border-radius: 8px;
	color: #ffe9ad;
	display: flex;
	font-size: 12px;
	font-weight: 900;
	min-height: 50px;
	padding: 8px;
}

.cbk-locked-product {
	opacity: .72;
}

.cbk-store-filters {
	margin-bottom: 14px;
}

@media (max-width: 1180px) {
	.cbk-resource-bar,
	.cbk-product-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

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

@media (max-width: 760px) {
	.cbk-store-page {
		padding: 12px;
	}

	.cbk-store-hero,
	.cbk-resource-bar,
	.cbk-feature-grid,
	.cbk-product-grid {
		grid-template-columns: 1fr;
	}

	.cbk-store-hero {
		padding: 18px;
	}

	.cbk-store-refresh {
		min-width: 0;
	}

	.cbk-store-panel {
		padding: 14px;
	}

	.cbk-product-card .ck-button {
		width: 100%;
	}
}

@media (max-width: 980px) {
	.ck-war-command-hero,
	.ck-war-top-grid,
	.ck-war-layout {
		grid-template-columns: 1fr;
	}

	.ck-war-enemy-grid {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 640px) {
	.ck-war-command-page {
		padding: 12px;
	}

	.ck-war-command-hero,
	.ck-war-panel {
		padding: 16px;
	}

	.ck-war-stat-grid,
	.ck-war-modal-stats {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.ck-war-search,
	.ck-war-section-head,
	.ck-war-modal-actions {
		display: grid;
		grid-template-columns: 1fr;
	}



	.ck-war-enemy-champion {
		max-width: 140px;
		width: 100%;
	}

	.ck-war-button,
	.ck-war-command-page .ck-button {
		width: 100%;
	}

	.ck-war-hero-copy h2 {
		font-size: 36px;
	}

	.ck-war-target-summary {
		grid-template-columns: 58px minmax(0, 1fr);
	}

	.ck-war-modal-dialog {
		padding: 18px;
	}
}
.ck-store-balance {
	background: #fff7ed;
	border: 1px solid #fed7aa;
	border-radius: 8px;
	color: #9a3412;
	display: inline-flex;
	font-size: 17px;
	font-weight: 900;
	line-height: 1.2;
	margin-bottom: 12px;
	padding: 10px 14px;
}
.ck-dashboard-panels {
	display: grid;
	gap: 16px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.ck-dashboard-panel {
	box-shadow: 0 8px 22px rgba(24, 33, 47, .05);
}

.ck-dashboard-panel h3 {
	font-size: 15px;
	letter-spacing: .04em;
	margin: 0 0 14px;
	text-transform: uppercase;
}

.ck-dashboard-metrics {
	display: grid;
	gap: 10px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.ck-dashboard-metric {
	background: #f8fafc;
	border: 1px solid var(--ck-line);
	border-radius: 8px;
	min-width: 0;
	padding: 12px;
}

.ck-dashboard-metric span {
	color: var(--ck-muted);
	display: block;
	font-size: 12px;
	line-height: 1.2;
}

.ck-dashboard-metric strong {
	color: var(--ck-ink);
	display: block;
	font-size: clamp(20px, 2vw, 28px);
	line-height: 1.1;
	margin-top: 6px;
	overflow-wrap: anywhere;
}

.ck-daily-quests {
	grid-column: 1 / -1;
}

.ck-quest-list {
	display: grid;
	gap: 10px;
}

.ck-quest-row {
	align-items: center;
	background: #f8fafc;
	border: 1px solid var(--ck-line);
	border-radius: 8px;
	display: grid;
	gap: 12px;
	grid-template-columns: minmax(0, 1fr) auto auto;
	padding: 12px;
}

.ck-quest-row strong,
.ck-quest-row small {
	display: block;
}

.ck-quest-row small {
	color: var(--ck-muted);
	font-size: 12px;
	margin-top: 3px;
}

.ck-quest-progress {
	color: var(--ck-muted);
	font-weight: 800;
	white-space: nowrap;
}

.ck-quest-status {
	border-radius: 999px;
	font-size: 12px;
	font-weight: 800;
	line-height: 1;
	padding: 7px 10px;
	white-space: nowrap;
}

.ck-quest-status.is-complete {
	background: #dcfae6;
	color: #067647;
}

.ck-quest-status.is-open {
	background: #fff4cf;
	color: #9a6700;
}

@media (max-width: 820px) {
	.ck-dashboard-panels {
		grid-template-columns: 1fr;
	}

	.ck-quest-row {
		align-items: start;
		grid-template-columns: 1fr;
	}
}

/* Game dashboard layout */
.ck-dashboard-top {
	align-items: start;
	display: grid;
	gap: 14px;
	grid-template-columns: minmax(0, 1.65fr) minmax(220px, .8fr) minmax(220px, .8fr);
}

.ck-dashboard-section,
.ck-dashboard-panel {
	border-color: #dbe7f5;
	box-shadow: 0 10px 28px rgba(24, 33, 47, .06);
}

.ck-section-heading {
	align-items: center;
	display: flex;
	gap: 12px;
	justify-content: space-between;
	margin-bottom: 12px;
}

.ck-section-heading h3,
.ck-dashboard-panel h3 {
	color: #111827;
	font-size: 15px;
	letter-spacing: .05em;
	line-height: 1.2;
	margin: 0;
	text-transform: uppercase;
}

.ck-section-heading p {
	color: var(--ck-muted);
	font-size: 12px;
	margin: 4px 0 0;
}

.ck-resource-summary {
	padding: 14px;
}

.ck-resource-summary h3 {
	margin-bottom: 10px;
}

.ck-resource-summary .ck-dashboard-metrics {
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.ck-dashboard-metric {
	background: linear-gradient(180deg, #ffffff, #f8fbff);
	border-color: #dbe7f5;
	padding: 10px 11px;
}

.ck-dashboard-metric.is-featured {
	background: linear-gradient(180deg, #edf7ff, #ffffff);
	border-color: #b9d9f5;
}

.ck-dashboard-metric strong {
	font-size: clamp(19px, 2vw, 26px);
	margin-top: 3px;
}

.ck-progress-panel,
.ck-quick-actions {
	padding: 14px;
}

.ck-progress-panel {
	align-self: start;
}

.ck-progress-copy {
	display: grid;
	gap: 2px;
	margin-top: 10px;
}

.ck-progress-copy strong {
	font-size: 14px;
}

.ck-progress-copy span,
.ck-power-milestone span {
	color: var(--ck-muted);
	font-size: 12px;
}

.ck-progress-track {
	background: #edf2f7;
	border-radius: 999px;
	height: 10px;
	margin: 10px 0;
	overflow: hidden;
}

.ck-progress-track span {
	background: linear-gradient(90deg, #176b87, #27a3d8);
	border-radius: inherit;
	display: block;
	height: 100%;
}

.ck-power-milestone {
	align-items: center;
	background: #f8fafc;
	border: 1px solid var(--ck-line);
	border-radius: 8px;
	display: flex;
	justify-content: space-between;
	padding: 8px 10px;
}

.ck-power-milestone strong {
	font-size: 18px;
}

.ck-quick-action-grid {
	display: grid;
	gap: 8px;
	grid-template-columns: 1fr;
	margin-top: 10px;
}

.ck-quick-action-grid .ck-button {
	min-height: 34px;
}

.ck-kingdom-commands {
	background: linear-gradient(180deg, #18212f, #0d121c);
	border-color: #243044;
	color: #fff;
}

.ck-kingdom-commands h3 {
	color: #fff;
}

.ck-command-grid {
	gap: 9px;
}

.ck-command-button {
	align-items: center;
	background:
		linear-gradient(135deg, rgba(17, 24, 39, .9), rgba(3, 7, 18, .96));
	border: 1px solid rgba(255, 255, 255, .12);
	border-radius: 8px;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, .08), 0 8px 18px rgba(0, 0, 0, .18);
	color: #fff;
	display: flex;
	font-size: 13px;
	font-weight: 900;
	justify-content: space-between;
	letter-spacing: .03em;
	line-height: 1.1;
	min-height: 46px;
	overflow: hidden;
	padding: 10px 12px;
	position: relative;
	text-decoration: none;
	text-transform: uppercase;
}

.ck-command-button::after {
	background: rgba(255, 255, 255, .18);
	border-radius: 999px;
	content: "";
	height: 6px;
	width: 26px;
}

.ck-command-button:hover,
.ck-command-button:focus {
	background:
		linear-gradient(135deg, rgba(30, 41, 59, .94), rgba(15, 23, 42, .98));
	border-color: rgba(255, 255, 255, .28);
	color: #fff;
	transform: translateY(-1px);
}

.ck-hero-roster-card {
	padding: 14px;
}

.ck-hero-grid-dashboard {
	gap: 14px;
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.ck-hero-grid-dashboard .ck-hero-card {
	background: linear-gradient(180deg, #ffffff, #f8fbff);
	border-color: #d7e5f5;
	box-shadow: 0 8px 18px rgba(24, 33, 47, .05);
	padding: 10px;
}

.ck-hero-grid-dashboard .ck-hero-image,
.ck-hero-grid-dashboard .ck-hero-empty-frame {
	aspect-ratio: 3 / 4;
	height: auto;
	max-width: none;
}

.ck-hero-grid-dashboard .ck-hero-image {
	display: block;
	object-fit: cover;
	width: 100%;
}

.ck-hero-title-row {
	align-items: start;
	display: grid;
	gap: 4px;
}

.ck-hero-title-row > strong {
	font-size: 15px;
	line-height: 1.2;
}

.ck-hero-power {
	align-items: center;
	background: #f2f8ff;
	border: 1px solid #dbeafe;
	border-radius: 8px;
	display: flex;
	justify-content: space-between;
	padding: 7px 9px;
}

.ck-hero-power span {
	color: var(--ck-muted);
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.ck-hero-power strong {
	color: #12576e;
	font-size: 18px;
	line-height: 1;
}

.ck-hero-ability {
	line-height: 1.35;
}

.ck-hero-grid-dashboard .ck-mini-actions {
	margin-top: 2px;
}

.ck-hero-grid-dashboard .ck-mini-actions .ck-button {
	min-height: 32px;
	width: 100%;
}

.ck-hero-grid-dashboard .ck-hero-empty-slot {
	align-content: center;
	min-height: 260px;
	text-align: center;
}

.ck-hero-grid-dashboard .ck-hero-empty-frame {
	aspect-ratio: 3 / 4;
	min-height: 86px;
}

.ck-daily-quests {
	padding: 14px;
}

.ck-daily-quests .ck-quest-list {
	gap: 6px;
}

.ck-daily-quests .ck-quest-row {
	align-items: center;
	background: #fbfdff;
	border-color: #dbe7f5;
	grid-template-columns: 26px minmax(120px, 1fr) minmax(170px, 1.2fr) auto auto;
	min-height: 40px;
	padding: 7px 10px;
}

.ck-quest-icon {
	align-items: center;
	border-radius: 999px;
	display: inline-flex;
	font-size: 12px;
	font-weight: 900;
	height: 22px;
	justify-content: center;
	width: 22px;
}

.ck-quest-icon.is-complete {
	background: #dcfae6;
	color: #067647;
}

.ck-quest-icon.is-open {
	background: #fff4cf;
	color: #9a6700;
}

.ck-daily-quests .ck-quest-row strong {
	font-size: 13px;
	line-height: 1.2;
}

.ck-daily-quests .ck-quest-row small {
	color: var(--ck-muted);
	font-size: 12px;
	margin: 0;
}

.ck-daily-quests .ck-quest-progress {
	background: #eef4fb;
	border-radius: 999px;
	color: #344054;
	font-size: 12px;
	padding: 5px 8px;
}

.ck-daily-quests .ck-quest-status {
	font-size: 11px;
	padding: 6px 8px;
}

.ck-compact-list {
	display: grid;
	gap: 7px;
}

.ck-compact-row {
	align-items: center;
	background: #f8fafc;
	border: 1px solid var(--ck-line);
	border-radius: 8px;
	display: flex;
	justify-content: space-between;
	min-height: 40px;
	padding: 8px 10px;
}

.ck-compact-row span {
	font-weight: 800;
}

.ck-compact-row strong {
	background: #fff;
	border: 1px solid #e5edf6;
	border-radius: 999px;
	font-size: 12px;
	padding: 5px 8px;
	white-space: nowrap;
}

@media (max-width: 1100px) {
	.ck-dashboard-top {
		grid-template-columns: 1fr 1fr;
	}

	.ck-resource-summary {
		grid-column: 1 / -1;
	}
}

@media (max-width: 820px) {
	.ck-dashboard-top {
		grid-template-columns: 1fr;
	}

	.ck-resource-summary .ck-dashboard-metrics {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.ck-hero-grid-dashboard {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.ck-daily-quests .ck-quest-row {
		grid-template-columns: 24px minmax(0, 1fr) auto;
	}

	.ck-daily-quests .ck-quest-row small,
	.ck-daily-quests .ck-quest-status {
		grid-column: 2 / -1;
	}

	.cbk-season-head {
		display: grid;
	}

	.cbk-season-points {
		justify-items: start;
	}

	.cbk-season-stats {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 520px) {
	.ck-kingdom-heading,
	.ck-section-heading {
		align-items: stretch;
		display: grid;
	}

	.ck-collection-panel {
		justify-items: stretch;
		min-width: 0;
		text-align: left;
	}

	.ck-hero-grid-dashboard {
		grid-template-columns: 1fr;
	}
}

/* CardBerus Kingdom RPG dashboard review */
.ck-dashboard-top {
	grid-template-columns: minmax(0, 1.45fr) minmax(260px, .75fr);
}

.ck-hero {
	background:
		radial-gradient(circle at 18% 20%, rgba(79, 209, 255, .28), transparent 34%),
		linear-gradient(135deg, #17394a 0%, #14243a 55%, #101827 100%);
	border-radius: 18px;
	color: #fff;
	padding: 34px 30px;
	box-shadow: 0 18px 45px rgba(15, 23, 42, .16);
}

.ck-hero h2{
	font-size: clamp(28px, 3vw, 42px);
	font-weight: 800;
	letter-spacing: -.03em;
}

.ck-kingdom-heading h2 {
	font-size: clamp(24px, 3vw, 34px);
	letter-spacing: 0;
}

.ck-collection-panel .ck-button {
	background: #fff;
	color: #12576e;
}

.cbk-season-card {
	background:
		linear-gradient(135deg, #ffffff, #eff8ff 62%, #ffffff),
		radial-gradient(circle at 90% 0, rgba(39, 163, 216, .16), transparent 34%);
	border-color: #a7d4ef;
	box-shadow: 0 16px 38px rgba(23, 107, 135, .12);
	padding: 18px;
}

.cbk-season-header,
.cbk-season-head {
	align-items: center;
	display: grid;
	gap: 18px;
	grid-template-columns: minmax(0, 1fr) auto;
}

.cbk-season-kicker {
	color: #176b87;
	display: inline-flex;
	font-size: 11px;
	font-weight: 900;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.cbk-season-name,
.cbk-season-title {
	font-size: clamp(24px, 3.2vw, 36px);
	line-height: 1.05;
	margin: 4px 0;
}

.cbk-season-days {
	color: var(--ck-muted);
	font-weight: 800;
	margin: 0;
}

.cbk-season-sp,
.cbk-season-points {
	align-items: center;
	background: linear-gradient(135deg, #111827, #1f3a5f);
	border: 1px solid rgba(255, 255, 255, .18);
	border-radius: 10px;
	box-shadow: 0 12px 28px rgba(17, 24, 39, .2);
	color: #fff;
	display: grid;
	justify-items: center;
	min-width: 150px;
	padding: 16px;
}

.cbk-season-sp strong,
.cbk-season-points strong {
	font-size: clamp(38px, 5vw, 58px);
	line-height: .95;
}

.cbk-season-sp span,
.cbk-season-points span {
	color: #bfdbfe;
	font-size: 12px;
	font-weight: 900;
	text-transform: uppercase;
}

.cbk-season-stats-grid,
.cbk-season-stats {
	display: grid;
	gap: 10px;
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.cbk-season-stats-grid > div,
.cbk-season-stats > div {
	background: rgba(255, 255, 255, .86);
	border: 1px solid #d6e9f8;
	border-radius: 8px;
	padding: 10px 12px;
}

.cbk-season-stats-grid span,
.cbk-season-stats span,
.cbk-season-progress span {
	color: var(--ck-muted);
	font-size: 12px;
	font-weight: 800;
}

.cbk-season-stats-grid strong,
.cbk-season-stats strong {
	display: block;
	font-size: 18px;
	margin-top: 3px;
}

.cbk-season-actions,
.cbk-season-rewards {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.cbk-kingdom-menu,
.cbk-active-auctions {
	padding: 16px;
}

.cbk-kingdom-menu-grid {
	display: grid;
	gap: 12px;
	grid-template-columns: repeat(6, minmax(0, 1fr));
}

.cbk-menu-tile {
	align-items: center;
	background: linear-gradient(180deg, #ffffff, #f8fbff);
	border: 1px solid #d6e6f6;
	border-radius: 10px;
	color: var(--ck-ink);
	display: grid;
	gap: 10px;
	min-height: 118px;
	padding: 13px;
	position: relative;
	text-align: center;
	text-decoration: none;
	transition: border-color .16s ease, box-shadow .16s ease, transform .16s ease, background .16s ease;
}

.cbk-menu-tile:hover,
.cbk-menu-tile:focus,
.cbk-menu-tile.cbk-menu-active {
	background: #eef8ff;
	border-color: #66b8e2;
	box-shadow: 0 14px 30px rgba(23, 107, 135, .16), 0 0 0 3px rgba(39, 163, 216, .1);
	color: var(--ck-ink);
	transform: translateY(-3px);
}

.cbk-menu-icon,
.cbk-card-icon {
	align-items: center;
	color: #176b87;
	display: inline-flex;
	font-weight: 900;
	height: 46px;
	justify-content: center;
	justify-self: center;
	width: 46px;
}

.cbk-menu-icon img,
.cbk-card-icon img {
	display: block;
	height: 30px;
	object-fit: contain;
	width: 30px;
}

.cbk-menu-icon,
.cbk-menu-icon img {
	height: 120px;
	width: 120px;
}


.cbk-menu-title {
	display: block;
	font-size: 14px;
	line-height: 1.15;
}

.cbk-menu-subtitle {
	color: var(--ck-muted);
	display: block;
	font-size: 12px;
	margin-top: 3px;
}

.cbk-menu-badge {
	background: #ef4444;
	border-radius: 999px;
	color: #fff;
	font-size: 10px;
	font-style: normal;
	font-weight: 900;
	line-height: 1;
	padding: 5px 7px;
	position: absolute;
	right: 8px;
	top: 8px;
}

.cbk-active-auctions {
	background: linear-gradient(180deg, #ffffff, #fbfdff);
}

.cbk-auction-list {
	display: grid;
	gap: 10px;
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.cbk-auction-item,
.cbk-auction-empty {
	background: #f8fafc;
	border: 1px solid #dbe7f5;
	border-radius: 8px;
	padding: 12px;
}

.cbk-auction-title,
.cbk-auction-meta,
.cbk-auction-rewards {
	display: block;
}

.cbk-auction-meta {
	color: var(--ck-muted);
	font-size: 12px;
	margin-top: 4px;
}

.cbk-auction-rewards {
	color: #176b87;
	font-size: 12px;
	font-weight: 900;
	margin-top: 8px;
}

.cbk-hero-card {
	background: linear-gradient(180deg, #ffffff, #f6fbff);
	border-color: #cfe5f7;
	box-shadow: 0 12px 26px rgba(24, 33, 47, .08);
}

.cbk-hero-image-wrap {
	aspect-ratio: 3 / 4;
	overflow: hidden;
}

.cbk-hero-image,
.ck-hero-grid-dashboard .cbk-hero-image {
	aspect-ratio: 3 / 4;
	display: block;
	object-fit: cover;
	width: 100%;
}

.cbk-hero-name {
	font-size: 16px;
}

.cbk-hero-stars {
	display: inline-flex;
}

.cbk-hero-statline {
	background: #fff;
	border: 1px solid #e4eef8;
	border-radius: 7px;
	color: #475467 !important;
	padding: 6px 8px;
}

.ck-hero-ability {
	display: -webkit-box !important;
	line-clamp: 2;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.cbk-empty-hero-slot {
	border-color: #a7d4ef;
	box-shadow: inset 0 0 0 1px rgba(39, 163, 216, .08);
}

.cbk-empty-hero-slot .ck-hero-empty-frame {
	background: #f2faff;
	border-color: #9bd2ef;
	color: #176b87;
}

.cbk-empty-hero-slot em {
	color: #176b87;
	font-style: normal;
	font-weight: 900;
}

.cbk-daily-quests .ck-quest-row {
	grid-template-columns: 28px minmax(110px, 1fr) minmax(220px, 1.1fr) auto auto;
}

.cbk-quest-rewards {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 5px;
}

.cbk-reward-icon {
	align-items: center;
	background: #f8fafc;
	border: 1px solid #dbe7f5;
	border-radius: 999px;
	color: #344054;
	display: inline-flex;
	font-size: 12px;
	font-weight: 900;
	gap: 5px;
	line-height: 1;
	padding: 5px 8px;
}

.cbk-reward-icon i {
	align-items: center;
	background: #176b87;
	border-radius: 999px;
	color: #fff;
	display: inline-flex;
	font-size: 9px;
	font-style: normal;
	height: 18px;
	justify-content: center;
	min-width: 18px;
	padding: 0 3px;
}

.cbk-reward-gold i,
.cbk-reward-gold_per_100 i {
	background: #d97706;
}

.cbk-reward-xp i,
.cbk-reward-xp_per_100 i {
	background: #2563eb;
}

.cbk-reward-hero_shards i {
	background: #7c3aed;
}

.cbk-reward-materials i {
	background: #059669;
}

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

.cbk-building-card,
.cbk-unit-card {
	align-items: center;
	background: linear-gradient(180deg, #ffffff, #f8fbff);
	border-color: #d7e8f6;
	display: flex;
	gap: 10px;
	justify-content: flex-start;
}

.cbk-building-card > span,
.cbk-unit-card > span {
	display: grid;
	gap: 2px;
}

.cbk-card-title {
	font-size: 13px;
	line-height: 1.2;
}

.cbk-card-level,
.cbk-card-value {
	color: var(--ck-muted);
	font-size: 12px;
	font-weight: 800;
}

@media (max-width: 1180px) {
	.cbk-kingdom-menu-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media (max-width: 820px) {
	.ck-dashboard-top,
	.cbk-auction-list {
		grid-template-columns: 1fr;
	}

	.cbk-season-header,
	.cbk-season-head {
		grid-template-columns: 1fr;
	}

	.cbk-season-sp,
	.cbk-season-points {
		justify-items: start;
	}

	.cbk-season-stats-grid,
	.cbk-season-stats {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.cbk-daily-quests .ck-quest-row {
		grid-template-columns: 26px minmax(0, 1fr) auto;
	}

	.cbk-quest-rewards,
	.cbk-quest-badge {
		grid-column: 2 / -1;
	}
}

@media (max-width: 560px) {
	.cbk-kingdom-menu-grid,
	.cbk-management-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.cbk-menu-tile {
		min-height: 108px;
		padding: 11px 8px;
	}
}

/* CardBerus Season battle-pass page */
.cbk-season-page {
	--cbk-gold: #f4c15d;
	--cbk-dark: #101827;
	--cbk-panel: #162235;
	--cbk-line: rgba(255, 255, 255, .12);
}

.cbk-season-page > .ck-card,
.cbk-season-page .ck-card {
	border-color: #d6e6f6;
}

.cbk-season-hero-banner {
	align-items: stretch;
	background:
		linear-gradient(135deg, rgba(16, 24, 39, .98), rgba(24, 48, 79, .94)),
		radial-gradient(circle at 82% 8%, rgba(244, 193, 93, .25), transparent 30%);
	border: 1px solid rgba(244, 193, 93, .24);
	border-radius: 12px;
	box-shadow: 0 24px 60px rgba(16, 24, 39, .24);
	color: #fff;
	display: grid;
	gap: 24px;
	grid-template-columns: minmax(0, 1.3fr) minmax(260px, .7fr);
	min-height: 320px;
	overflow: hidden;
	padding: 28px;
	position: relative;
}

.cbk-season-banner-content {
	align-content: center;
	display: grid;
	gap: 12px;
	position: relative;
	z-index: 1;
}

.cbk-season-banner-title {
	color: #fff;
	font-size: clamp(34px, 5vw, 64px);
	letter-spacing: 0;
	line-height: .95;
	margin: 0;
	max-width: 760px;
}

.cbk-season-banner-subtitle {
	color: var(--cbk-gold);
	font-size: 13px;
	font-weight: 900;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.cbk-season-banner-days {
	background: rgba(255, 255, 255, .1);
	border: 1px solid rgba(255, 255, 255, .16);
	border-radius: 999px;
	color: #fff;
	display: inline-flex;
	font-size: 13px;
	justify-self: start;
	padding: 8px 12px;
}

.cbk-season-banner-content p {
	color: #dbeafe;
	font-size: 16px;
	max-width: 540px;
}

.cbk-season-banner-hero {
	align-items: end;
	display: flex;
	justify-content: center;
}

.cbk-season-hero-placeholder,
.cbk-tier-image,
.cbk-earn-sp-icon,
.cbk-podium-avatar,
.cbk-table-avatar {
	align-items: center;
	background: linear-gradient(135deg, rgba(255, 255, 255, .12), rgba(255, 255, 255, .04));
	border: 1px solid rgba(255, 255, 255, .16);
	border-radius: 12px;
	color: rgba(255, 255, 255, .72);
	display: flex;
	font-size: 12px;
	font-weight: 900;
	justify-content: center;
	object-fit: cover;
	text-align: center;
}

.cbk-season-hero-placeholder {
	aspect-ratio: 3 / 4;
	max-height: 300px;
	width: min(100%, 230px);
}

.cbk-season-progress-card {
	align-items: center;
	background: linear-gradient(135deg, #ffffff, #f3f9ff);
	display: grid;
	gap: 14px;
	grid-template-columns: minmax(220px, 1.15fr) repeat(3, minmax(130px, .6fr));
}

.cbk-season-tier-badge {
	border-radius: 999px;
	display: inline-flex;
	font-size: 12px;
	font-weight: 900;
	line-height: 1;
	margin-bottom: 8px;
	padding: 8px 12px;
	text-transform: uppercase;
}

.cbk-season-sp-big {
	display: block;
	font-size: clamp(38px, 5vw, 64px);
	line-height: .95;
}

.cbk-season-rank-card {
	background: #fff;
	border: 1px solid #dbe7f5;
	border-radius: 10px;
	padding: 12px;
}

.cbk-season-rank-card span,
.cbk-season-progress-bar span {
	color: var(--ck-muted);
	display: block;
	font-size: 12px;
	font-weight: 800;
}

.cbk-season-rank-card strong {
	display: block;
	font-size: 20px;
	margin-top: 4px;
}

.cbk-season-progress-bar {
	background: #e8f0f8;
	border-radius: 999px;
	grid-column: 1 / -1;
	height: 12px;
	margin-top: 6px;
	position: relative;
}

.cbk-season-progress-bar > div {
	display: flex;
	justify-content: space-between;
	left: 0;
	position: absolute;
	right: 0;
	top: -22px;
}

.cbk-season-progress-fill {
	background: linear-gradient(90deg, #176b87, #f4c15d);
	border-radius: inherit;
	display: block;
	height: 100%;
	min-width: 0;
}

.cbk-season-rewards,
.cbk-earn-sp-section,
.cbk-season-challenges,
.cbk-season-podium,
.cbk-season-activity,
.cbk-season-ranking-board {
	padding: 18px;
}

.cbk-reward-tier-grid {
	display: grid;
	gap: 12px;
	grid-template-columns: repeat(7, minmax(0, 1fr));
}

.cbk-reward-tier-card {
	background: linear-gradient(180deg, #ffffff, #f8fbff);
	border: 1px solid #d6e6f6;
	border-radius: 10px;
	display: grid;
	gap: 8px;
	padding: 12px;
}

.cbk-reward-tier-card h4 {
	font-size: 16px;
	margin: 0;
}

.cbk-reward-tier-card > span {
	color: var(--ck-muted);
	font-size: 12px;
	font-weight: 800;
}

.cbk-tier-image {
	aspect-ratio: 1;
	background: #eef4fb;
	color: #344054;
	width: 100%;
}

.cbk-reward-tier-card ul {
	display: grid;
	gap: 5px;
	list-style: none;
	margin: 0;
	padding: 0;
}

.cbk-reward-tier-card li {
	color: #344054;
	font-size: 12px;
}

.cbk-tier-legend,
.cbk-tier-warlord { border-color: #f59e0b; box-shadow: 0 0 0 1px rgba(245, 158, 11, .18); }
.cbk-tier-master,
.cbk-tier-general { border-color: #a78bfa; }
.cbk-tier-diamond,
.cbk-tier-commander { border-color: #38bdf8; }
.cbk-tier-platinum,
.cbk-tier-captain { border-color: #2dd4bf; }
.cbk-tier-gold,
.cbk-tier-knight { border-color: #f4c15d; }
.cbk-tier-silver,
.cbk-tier-warrior { border-color: #cbd5e1; }
.cbk-tier-bronze,
.cbk-tier-soldier { border-color: #b77945; }

.cbk-earn-sp-grid {
	display: grid;
	gap: 10px;
	grid-template-columns: repeat(8, minmax(0, 1fr));
}

.cbk-earn-sp-item {
	background: #f8fafc;
	border: 1px solid #dbe7f5;
	border-radius: 10px;
	display: grid;
	gap: 6px;
	justify-items: center;
	padding: 12px 8px;
	text-align: center;
}

.cbk-earn-sp-icon {
	background: #e8f5ff;
	color: #176b87;
	height: 44px;
	width: 44px;
}

.cbk-earn-sp-title {
	font-size: 12px;
	line-height: 1.2;
}

.cbk-earn-sp-value {
	color: #176b87;
	font-size: 14px;
	font-weight: 900;
}

.cbk-earn-sp-item small {
	color: var(--ck-muted);
	font-size: 11px;
}

.cbk-challenge-list {
	display: grid;
	gap: 10px;
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.cbk-challenge-item {
	background: #f8fafc;
	border: 1px solid #dbe7f5;
	border-radius: 10px;
	display: grid;
	gap: 8px;
	padding: 12px;
}

.cbk-challenge-title {
	font-size: 14px;
}

.cbk-challenge-progress,
.cbk-challenge-reward {
	color: var(--ck-muted);
	font-size: 12px;
	font-weight: 800;
}

.cbk-podium-grid {
	align-items: end;
	display: grid;
	gap: 12px;
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.cbk-podium-player {
	background: linear-gradient(180deg, #ffffff, #f8fbff);
	border: 1px solid #dbe7f5;
	border-radius: 12px;
	display: grid;
	gap: 8px;
	justify-items: center;
	padding: 16px;
	text-align: center;
}

.cbk-podium-rank-1 {
	border-color: #f4c15d;
	box-shadow: 0 18px 38px rgba(244, 193, 93, .18);
	min-height: 260px;
	order: 2;
}

.cbk-podium-rank-2 { min-height: 220px; order: 1; }
.cbk-podium-rank-3 { min-height: 200px; order: 3; }

.cbk-podium-rank {
	background: #111827;
	border-radius: 999px;
	color: #fff;
	font-weight: 900;
	padding: 6px 10px;
}

.cbk-podium-avatar {
	background: #e8f5ff;
	color: #176b87;
	height: 70px;
	width: 70px;
}

.cbk-podium-name {
	font-size: 18px;
}

.cbk-podium-points {
	color: #176b87;
	font-weight: 900;
}

.cbk-season-activity {
	display: grid;
	gap: 8px;
}

.cbk-season-activity-item {
	align-items: center;
	background: #f8fafc;
	border: 1px solid #dbe7f5;
	border-radius: 8px;
	display: flex;
	justify-content: space-between;
	padding: 10px 12px;
}

.cbk-season-activity-points {
	color: #176b87;
}

.cbk-season-table-wrap {
	overflow-x: auto;
}

.cbk-season-ranking-table {
	min-width: 840px;
}

.cbk-season-ranking-table tr.cbk-current-user-row td {
	background: #eef8ff;
}

.cbk-season-ranking-table tr.cbk-top-rank-row td {
	font-weight: 800;
}

.cbk-player-cell {
	align-items: center;
	display: inline-flex;
	gap: 8px;
}

.cbk-table-avatar {
	background: #e8f5ff;
	color: #176b87;
	height: 32px;
	width: 32px;
}

.cbk-reward-preview {
	background: #f8fafc;
	border: 1px solid #dbe7f5;
	border-radius: 999px;
	display: inline-flex;
	font-size: 12px;
	font-weight: 800;
	padding: 6px 9px;
}

.cbk-season-rankings .cbk-player-cell-plain {
	gap: 0;
}

.cbk-season-rankings .cbk-season-reward-pill-list {
	background: transparent;
	border: 0;
	border-radius: 0;
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	padding: 0;
}

.cbk-season-rankings .cbk-season-reward-pill-list .cbk-reward-pill {
	align-items: center;
	background: rgba(15, 23, 42, .86);
	border: 1px solid rgba(148, 163, 184, .2);
	border-radius: 999px;
	color: #cbd5e1;
	display: inline-flex;
	font-size: 11px;
	font-weight: 900;
	gap: 5px;
	line-height: 1;
	min-height: 26px;
	padding: 7px 10px;
	white-space: nowrap;
}

.cbk-season-rankings .cbk-season-reward-pill-list .cbk-reward-pill::before {
	background: #94a3b8;
	border-radius: 999px;
	box-shadow: 0 0 0 3px rgba(148, 163, 184, .12);
	content: "";
	height: 6px;
	width: 6px;
}

.cbk-season-rankings .cbk-season-reward-pill-list .cbk-reward-pill.is-gold {
	background: rgba(120, 53, 15, .28);
	border-color: rgba(251, 191, 36, .34);
	color: #fde68a;
}

.cbk-season-rankings .cbk-season-reward-pill-list .cbk-reward-pill.is-gold::before {
	background: #f59e0b;
	box-shadow: 0 0 0 3px rgba(245, 158, 11, .16);
}

.cbk-season-rankings .cbk-season-reward-pill-list .cbk-reward-pill.is-shards {
	background: rgba(8, 145, 178, .18);
	border-color: rgba(34, 211, 238, .28);
	color: #a5f3fc;
}

.cbk-season-rankings .cbk-season-reward-pill-list .cbk-reward-pill.is-shards::before {
	background: #22d3ee;
	box-shadow: 0 0 0 3px rgba(34, 211, 238, .14);
}

.cbk-season-rankings .cbk-season-reward-pill-list .cbk-reward-pill.is-chest {
	background: rgba(234, 88, 12, .18);
	border-color: rgba(251, 146, 60, .3);
	color: #fed7aa;
}

.cbk-season-rankings .cbk-season-reward-pill-list .cbk-reward-pill.is-chest::before {
	background: #fb923c;
	box-shadow: 0 0 0 3px rgba(251, 146, 60, .14);
}

.cbk-empty-season-state {
	align-items: center;
	background: #f8fafc;
	border: 1px dashed #a7d4ef;
	border-radius: 12px;
	display: grid;
	justify-items: center;
	padding: 28px;
	text-align: center;
}

@media (max-width: 1180px) {
	.cbk-reward-tier-grid,
	.cbk-earn-sp-grid {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}

	.cbk-challenge-list {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 820px) {
	.cbk-season-hero-banner,
	.cbk-season-progress-card {
		grid-template-columns: 1fr;
	}

	.cbk-reward-tier-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.cbk-earn-sp-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.cbk-podium-grid {
		grid-template-columns: 1fr;
	}

	.cbk-podium-rank-1,
	.cbk-podium-rank-2,
	.cbk-podium-rank-3 {
		min-height: 0;
		order: initial;
	}
}

@media (max-width: 560px) {
	.cbk-season-hero-banner {
		padding: 18px;
	}

	.cbk-reward-tier-grid,
	.cbk-challenge-list {
		grid-template-columns: 1fr;
	}

	.cbk-season-page .ck-button {
		width: 100%;
	}
}

/* Reward tier tile polish */
.cbk-season-page .cbk-season-rewards {
	overflow: hidden;
}

.cbk-season-page .cbk-reward-tier-grid {
	align-items: stretch;
	display: grid;
	gap: 12px;
	grid-template-columns: repeat(7, minmax(0, 1fr));
}

.cbk-season-page .cbk-reward-tier-card {
	align-content: start;
	background: linear-gradient(180deg, #ffffff, #f8fbff);
	border-radius: 10px;
	box-shadow: 0 10px 24px rgba(24, 33, 47, .06);
	box-sizing: border-box;
	display: grid;
	gap: 8px;
	min-height: 0;
	padding: 12px;
}

.cbk-season-page .cbk-tier-image {
	aspect-ratio: 16 / 10;
	background: #eef4fb;
	border: 0;
	border-radius: 9px;
	color: #344054;
	font-size: 11px;
	font-weight: 900;
	min-height: 0;
	width: 100%;
}

.cbk-season-page .cbk-reward-tier-card h4 {
	color: #18212f;
	font-size: 16px;
	font-weight: 900;
	line-height: 1.15;
	margin: 2px 0 0;
	text-shadow: none;
}

.cbk-season-page .cbk-reward-tier-card > span {
	color: #667085;
	font-size: 12px;
	font-weight: 900;
	line-height: 1.25;
}

.cbk-season-page .cbk-reward-tier-card ul {
	gap: 4px;
}

.cbk-season-page .cbk-reward-tier-card li {
	color: #344054;
	font-size: 12px;
	line-height: 1.35;
	overflow-wrap: anywhere;
}

.cbk-season-page .cbk-reward-tier-card.cbk-tier-legend h4,
.cbk-season-page .cbk-reward-tier-card.cbk-tier-warlord h4 { color: #b45309; }
.cbk-season-page .cbk-reward-tier-card.cbk-tier-master h4,
.cbk-season-page .cbk-reward-tier-card.cbk-tier-general h4 { color: #6d28d9; }
.cbk-season-page .cbk-reward-tier-card.cbk-tier-diamond h4,
.cbk-season-page .cbk-reward-tier-card.cbk-tier-commander h4 { color: #0369a1; }
.cbk-season-page .cbk-reward-tier-card.cbk-tier-platinum h4,
.cbk-season-page .cbk-reward-tier-card.cbk-tier-captain h4 { color: #0f766e; }
.cbk-season-page .cbk-reward-tier-card.cbk-tier-gold h4,
.cbk-season-page .cbk-reward-tier-card.cbk-tier-knight h4 { color: #b45309; }
.cbk-season-page .cbk-reward-tier-card.cbk-tier-silver h4,
.cbk-season-page .cbk-reward-tier-card.cbk-tier-warrior h4 { color: #475569; }
.cbk-season-page .cbk-reward-tier-card.cbk-tier-bronze h4,
.cbk-season-page .cbk-reward-tier-card.cbk-tier-soldier h4 { color: #9a3412; }

@media (max-width: 1280px) {
	.cbk-season-page .cbk-reward-tier-grid {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}
}

@media (max-width: 820px) {
	.cbk-season-page .cbk-reward-tier-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 560px) {
	.cbk-season-page .cbk-reward-tier-grid {
		gap: 10px;
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.cbk-season-page .cbk-reward-tier-card {
		gap: 7px;
		padding: 10px;
	}

	.cbk-season-page .cbk-tier-image {
		aspect-ratio: 16 / 9;
		font-size: 10px;
	}

	.cbk-season-page .cbk-reward-tier-card h4 {
		font-size: 14px;
	}

	.cbk-season-page .cbk-reward-tier-card > span,
	.cbk-season-page .cbk-reward-tier-card li {
		font-size: 11px;
	}
}
/* Premium dark fantasy season rankings page. Replace placeholder images in assets/images/seasons when final art is ready. */
.cbk-season-page {
	--season-bg: #07111e;
	--season-panel: #101a2a;
	--season-panel-2: #172337;
	--season-border: rgba(148, 163, 184, .28);
	--season-gold: #f59e0b;
	--season-orange: #f97316;
	--season-cyan: #38bdf8;
	--season-purple: #a78bfa;
	background:
		radial-gradient(circle at 8% 0, rgba(56, 189, 248, .16), transparent 28%),
		radial-gradient(circle at 92% 12%, rgba(167, 139, 250, .14), transparent 28%),
		radial-gradient(circle at 70% 92%, rgba(245, 158, 11, .14), transparent 30%),
		linear-gradient(145deg, #07111e, #0b1220 55%, #15100b);
	border: 1px solid var(--season-border);
	border-radius: 16px;
	box-shadow: 0 30px 90px rgba(2, 6, 23, .38);
	color: #e2e8f0;
	display: grid;
	gap: 18px;
	margin-left: auto;
	margin-right: auto;
	max-width: 1400px;
	padding: 24px;
}

.cbk-season-page .ck-kingdom-back-link {
	align-items: center;
	background: rgba(15, 23, 42, .72);
	border: 1px solid rgba(56, 189, 248, .25);
	border-radius: 999px;
	color: #7dd3fc;
	display: inline-flex;
	font-weight: 900;
	justify-self: start;
	padding: 9px 14px;
	text-decoration: none;
}

.cbk-season-page .ck-card,
.cbk-season-page > .ck-card,
.cbk-season-page .cbk-season-ranking-board {
	background:
		linear-gradient(180deg, rgba(23, 35, 55, .94), rgba(15, 23, 42, .98));
	border: 1px solid var(--season-border);
	border-radius: 14px;
	box-shadow: 0 20px 50px rgba(2, 6, 23, .26);
	color: #e2e8f0;
}

.cbk-season-page .ck-section-heading h2,
.cbk-season-page .ck-section-heading h3 {
	color: #fff;
	font-size: clamp(22px, 3vw, 30px);
	line-height: 1.05;
	margin: 0;
}

.cbk-season-page .ck-section-heading p {
	color: #94a3b8;
	font-weight: 700;
	margin-top: 6px;
}

.cbk-season-hero-banner {
	background:
		linear-gradient(135deg, rgba(8, 19, 31, .96), rgba(15, 23, 42, .92)),
		radial-gradient(circle at 72% 24%, rgba(245, 158, 11, .24), transparent 28%),
		radial-gradient(circle at 18% 88%, rgba(56, 189, 248, .2), transparent 30%);
	border: 1px solid rgba(245, 158, 11, .34);
	border-radius: 18px;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, .08), 0 28px 70px rgba(2, 6, 23, .35);
	overflow: hidden;
	padding: clamp(22px, 4vw, 40px);
	position: relative;
}

.cbk-season-hero-banner::before {
	background: linear-gradient(90deg, var(--season-gold), transparent);
	content: "";
	height: 3px;
	inset: 0 28px auto;
	position: absolute;
}

.cbk-season-banner-title {
	color: #fff;
	font-size: clamp(42px, 7vw, 88px);
	letter-spacing: .02em;
	line-height: .9;
	margin: 10px 0 14px;
	text-shadow: 0 0 28px rgba(245, 158, 11, .22);
}

.cbk-season-banner-subtitle,
.cbk-season-page .cbk-section-kicker {
	color: #fbbf24;
	font-size: 12px;
	font-weight: 1000;
	letter-spacing: .14em;
	text-transform: uppercase;
}

.cbk-season-banner-days {
	background: rgba(245, 158, 11, .14);
	border: 1px solid rgba(245, 158, 11, .42);
	box-shadow: 0 0 24px rgba(245, 158, 11, .12);
	color: #fde68a;
	font-weight: 1000;
}

.cbk-season-banner-content p {
	color: #cbd5e1;
	font-size: 17px;
	font-weight: 700;
	line-height: 1.5;
}

.cbk-season-page .ck-button {
	background: linear-gradient(135deg, #fbbf24, #f97316);
	border: 0;
	border-radius: 9px;
	box-shadow: 0 14px 30px rgba(249, 115, 22, .26);
	color: #fff;
	font-weight: 1000;
	min-height: 44px;
	padding: 12px 18px;
}

.cbk-season-banner-hero {
	align-items: center;
}

.cbk-season-hero-placeholder {
	aspect-ratio: 3 / 4;
	background:
		linear-gradient(145deg, rgba(245, 158, 11, .22), rgba(56, 189, 248, .12)),
		radial-gradient(circle at 50% 28%, rgba(255, 255, 255, .12), transparent 34%);
	border: 1px solid rgba(245, 158, 11, .44);
	border-radius: 18px;
	box-shadow: inset 0 0 50px rgba(56, 189, 248, .08), 0 24px 50px rgba(2, 6, 23, .35);
	color: #fff;
	font-size: 20px;
	letter-spacing: .08em;
	max-height: 360px;
	text-transform: uppercase;
	width: min(100%, 270px);
}

.cbk-season-progress-card {
	background:
		radial-gradient(circle at 0 0, rgba(56, 189, 248, .16), transparent 32%),
		linear-gradient(180deg, rgba(23, 35, 55, .94), rgba(15, 23, 42, .98));
	border-color: rgba(56, 189, 248, .28);
	gap: 14px;
	padding: 18px;
}

.cbk-season-tier-badge {
	background: rgba(245, 158, 11, .15);
	border: 1px solid rgba(245, 158, 11, .42);
	color: #fde68a;
}

.cbk-season-sp-big {
	color: #fff;
	text-shadow: 0 0 24px rgba(56, 189, 248, .24);
}

.cbk-season-rank-card {
	background: rgba(15, 23, 42, .74);
	border: 1px solid rgba(148, 163, 184, .24);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, .05);
}

.cbk-season-rank-card span,
.cbk-season-progress-bar span {
	color: #94a3b8;
}

.cbk-season-rank-card strong {
	color: #fff;
}

.cbk-season-progress-bar {
	background: rgba(2, 6, 23, .72);
	border: 1px solid rgba(148, 163, 184, .22);
	box-shadow: inset 0 1px 4px rgba(0, 0, 0, .3);
	height: 15px;
}

.cbk-season-progress-fill {
	background: linear-gradient(90deg, var(--season-cyan), var(--season-gold), var(--season-orange));
	box-shadow: 0 0 24px rgba(249, 115, 22, .42);
}

.cbk-season-page .cbk-reward-tier-grid {
	grid-template-columns: repeat(7, minmax(150px, 1fr));
}

.cbk-season-page .cbk-reward-tier-card {
	background:
		linear-gradient(180deg, rgba(30, 41, 59, .86), rgba(15, 23, 42, .96));
	border: 1px solid rgba(148, 163, 184, .26);
	border-radius: 14px;
	box-shadow: 0 18px 38px rgba(2, 6, 23, .24);
	color: #e2e8f0;
	padding: 14px;
}

.cbk-season-page .cbk-reward-tier-card.cbk-tier-warlord {
	background:
		radial-gradient(circle at 50% 0, rgba(245, 158, 11, .28), transparent 42%),
		linear-gradient(180deg, rgba(55, 35, 12, .92), rgba(15, 23, 42, .98));
	border-color: rgba(245, 158, 11, .62);
	box-shadow: 0 0 0 1px rgba(245, 158, 11, .2), 0 24px 55px rgba(245, 158, 11, .14);
}

.cbk-season-page .cbk-tier-image {
	background: linear-gradient(145deg, rgba(245, 158, 11, .16), rgba(56, 189, 248, .1));
	border: 1px solid rgba(148, 163, 184, .2);
	color: #e2e8f0;
}

.cbk-season-page .cbk-reward-tier-card h4 {
	color: #fff !important;
}

.cbk-season-page .cbk-reward-tier-card > span,
.cbk-season-page .cbk-reward-tier-card li {
	color: #cbd5e1;
}

.cbk-season-page .cbk-reward-tier-card li::before {
	background: linear-gradient(135deg, #fde68a, #f59e0b);
	border-radius: 999px;
	box-shadow: 0 0 10px rgba(245, 158, 11, .48);
	content: "";
	display: inline-block;
	height: 7px;
	margin-right: 8px;
	vertical-align: middle;
	width: 7px;
}

.cbk-earn-sp-grid {
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.cbk-earn-sp-item {
	background: linear-gradient(180deg, rgba(30, 41, 59, .78), rgba(15, 23, 42, .96));
	border: 1px solid rgba(148, 163, 184, .24);
	color: #fff;
	min-height: 158px;
	padding: 14px;
}

.cbk-earn-sp-icon,
.cbk-podium-avatar,
.cbk-table-avatar {
	background: linear-gradient(145deg, rgba(56, 189, 248, .18), rgba(245, 158, 11, .12));
	border: 1px solid rgba(56, 189, 248, .3);
	color: #e0f2fe;
}

.cbk-earn-sp-value {
	background: rgba(245, 158, 11, .16);
	border: 1px solid rgba(245, 158, 11, .34);
	border-radius: 999px;
	color: #fde68a;
	padding: 6px 10px;
}

.cbk-earn-sp-item small {
	color: #94a3b8;
}

.cbk-challenge-item {
	background: linear-gradient(180deg, rgba(30, 41, 59, .78), rgba(15, 23, 42, .96));
	border: 1px solid rgba(148, 163, 184, .24);
	position: relative;
}

.cbk-mission-icon,
.cbk-activity-icon {
	align-items: center;
	background: rgba(245, 158, 11, .16);
	border: 1px solid rgba(245, 158, 11, .38);
	border-radius: 999px;
	color: #fde68a;
	display: inline-flex;
	font-size: 12px;
	font-weight: 1000;
	height: 34px;
	justify-content: center;
	width: 34px;
}

.cbk-challenge-title {
	color: #fff;
}

.cbk-challenge-progress,
.cbk-challenge-reward {
	color: #cbd5e1;
}

.cbk-challenge-reward {
	background: rgba(56, 189, 248, .12);
	border: 1px solid rgba(56, 189, 248, .26);
	border-radius: 999px;
	justify-self: start;
	padding: 6px 10px;
}

.cbk-podium-player {
	background:
		radial-gradient(circle at 50% 0, rgba(56, 189, 248, .16), transparent 36%),
		linear-gradient(180deg, rgba(30, 41, 59, .84), rgba(15, 23, 42, .98));
	border: 1px solid rgba(148, 163, 184, .26);
	color: #e2e8f0;
}

.cbk-podium-rank-1 {
	background:
		radial-gradient(circle at 50% 0, rgba(245, 158, 11, .25), transparent 38%),
		linear-gradient(180deg, rgba(55, 35, 12, .88), rgba(15, 23, 42, .98));
	border-color: rgba(245, 158, 11, .58);
	transform: translateY(-12px);
}

.cbk-podium-rank {
	background: linear-gradient(135deg, #fbbf24, #f97316);
	color: #111827;
}

.cbk-podium-name {
	color: #fff;
}

.cbk-podium-player small,
.cbk-podium-points {
	color: #cbd5e1;
}

.cbk-season-activity-item {
	background: rgba(15, 23, 42, .72);
	border: 1px solid rgba(148, 163, 184, .22);
	border-radius: 12px;
	color: #e2e8f0;
	display: grid;
	gap: 10px;
	grid-template-columns: auto minmax(0, 1fr) auto;
}

.cbk-activity-text {
	align-self: center;
}

.cbk-season-activity-points {
	align-self: center;
	background: rgba(34, 197, 94, .14);
	border: 1px solid rgba(34, 197, 94, .3);
	border-radius: 999px;
	color: #bbf7d0;
	padding: 6px 10px;
}

.cbk-season-tabs {
	background: rgba(15, 23, 42, .7);
	border: 1px solid rgba(148, 163, 184, .22);
	border-radius: 999px;
	padding: 6px;
}

.cbk-season-tabs a {
	background: transparent;
	border: 0;
	color: #cbd5e1;
}

.cbk-season-tabs a.is-active {
	background: linear-gradient(135deg, #fbbf24, #f97316);
	color: #fff;
}

.cbk-season-ranking-table {
	border-collapse: separate;
	border-spacing: 0 8px;
	min-width: 900px;
}

.cbk-season-ranking-table th {
	background: transparent;
	border: 0;
	color: #94a3b8;
	font-size: 11px;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.cbk-season-ranking-table td {
	background: rgba(15, 23, 42, .74);
	border-bottom: 1px solid rgba(148, 163, 184, .18);
	border-top: 1px solid rgba(148, 163, 184, .18);
	color: #dbe7f5;
	padding: 12px;
}

.cbk-season-ranking-table td:first-child {
	border-left: 1px solid rgba(148, 163, 184, .18);
	border-radius: 10px 0 0 10px;
}

.cbk-season-ranking-table td:last-child {
	border-radius: 0 10px 10px 0;
	border-right: 1px solid rgba(148, 163, 184, .18);
}

.cbk-season-ranking-table tr.cbk-current-user-row td {
	background: rgba(56, 189, 248, .1);
	box-shadow: inset 0 0 0 1px rgba(56, 189, 248, .34);
}

.cbk-season-ranking-table tr.cbk-top-rank-row td {
	background: linear-gradient(90deg, rgba(245, 158, 11, .16), rgba(15, 23, 42, .78));
}

.cbk-season-rank-chip,
.cbk-reward-preview {
	background: rgba(56, 189, 248, .12);
	border: 1px solid rgba(56, 189, 248, .28);
	border-radius: 999px;
	color: #7dd3fc;
	display: inline-flex;
	font-weight: 1000;
	padding: 6px 10px;
}

.cbk-reward-preview {
	background: rgba(245, 158, 11, .13);
	border-color: rgba(245, 158, 11, .32);
	color: #fde68a;
}

.cbk-empty-season-state {
	background: rgba(15, 23, 42, .72);
	border-color: rgba(56, 189, 248, .32);
	color: #cbd5e1;
}

@media (max-width: 1180px) {
	.cbk-season-page .cbk-reward-tier-grid {
		grid-template-columns: repeat(4, minmax(150px, 1fr));
	}
}

@media (max-width: 820px) {
	.cbk-season-page {
		padding: 16px;
	}

	.cbk-season-progress-card,
	.cbk-season-hero-banner {
		grid-template-columns: 1fr;
	}

	.cbk-season-page .cbk-reward-tier-grid,
	.cbk-earn-sp-grid,
	.cbk-challenge-list {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.cbk-podium-rank-1 {
		transform: none;
	}
}

@media (max-width: 560px) {
	.cbk-season-page {
		border-radius: 0;
		padding: 12px;
	}

	.cbk-season-page .cbk-reward-tier-grid,
	.cbk-earn-sp-grid,
	.cbk-challenge-list {
		grid-template-columns: 1fr;
	}

	.cbk-season-activity-item {
		grid-template-columns: auto minmax(0, 1fr);
	}

	.cbk-season-activity-points {
		grid-column: 1 / -1;
		justify-self: start;
	}
}
.ck-reward-modal {
	align-items: center;
	background: rgba(9, 14, 24, .72);
	display: flex;
	inset: 0;
	justify-content: center;
	opacity: 0;
	padding: 18px;
	pointer-events: none;
	position: fixed;
	transition: opacity .16s ease;
	z-index: 99999;
}

.ck-reward-modal.is-open {
	opacity: 1;
	pointer-events: auto;
}

body.ck-reward-modal-open {
	overflow: hidden;
}

.ck-reward-modal-dialog {
	background: #fff;
	border: 1px solid #dbe7f5;
	border-radius: 12px;
	box-shadow: 0 28px 90px rgba(9, 14, 24, .36);
	display: grid;
	gap: 12px;
	max-width: 420px;
	padding: 22px;
	position: relative;
	text-align: center;
	width: min(100%, 420px);
}

.ck-reward-modal-dialog h3 {
	color: var(--ck-ink);
	font-size: 24px;
	line-height: 1.15;
	margin: 0;
}

.ck-reward-modal-message {
	color: var(--ck-muted);
	margin: 0;
}

.ck-reward-modal-list {
	display: grid;
	gap: 8px;
	margin: 4px 0;
}

.ck-reward-modal-list > div {
	align-items: center;
	background: #fff7ed;
	border: 1px solid #fed7aa;
	border-radius: 8px;
	display: flex;
	justify-content: space-between;
	padding: 10px 12px;
}

.ck-reward-modal-list span {
	color: #9a3412;
	font-weight: 800;
}

.ck-reward-modal-list strong {
	color: #111827;
	font-size: 18px;
}

.ck-reward-modal-close {
	align-items: center;
	background: #f4f7fb;
	border: 0;
	border-radius: 999px;
	color: var(--ck-ink);
	cursor: pointer;
	display: inline-flex;
	font-size: 22px;
	font-weight: 900;
	height: 34px;
	justify-content: center;
	line-height: 1;
	position: absolute;
	right: 12px;
	top: 12px;
	width: 34px;
}

.ck-reward-modal-close:hover,
.ck-reward-modal-close:focus {
	background: #f97316;
	color: #fff;
}

.ck-reward-modal-ok {
	justify-self: center;
	min-width: 130px;
}

.ck-welcome-gift-modal {
	align-items: center;
	display: flex;
	inset: 0;
	justify-content: center;
	opacity: 0;
	padding: 18px;
	pointer-events: none;
	position: fixed;
	transition: opacity .16s ease;
	z-index: 100000;
}

.ck-welcome-gift-modal.is-open {
	opacity: 1;
	pointer-events: auto;
}

body.ck-welcome-gift-open {
	overflow: hidden;
}

.ck-welcome-gift-backdrop {
	background: rgba(9, 14, 24, .76);
	inset: 0;
	position: absolute;
}

.ck-welcome-gift-dialog {
	background: linear-gradient(180deg, #111c2f, #0c1424);
	border: 1px solid #314764;
	box-shadow: 0 28px 90px rgba(9, 14, 24, .42);
	color: #f8fafc;
	display: grid;
	gap: 14px;
	max-width: 440px;
	padding: 22px;
	position: relative;
	text-align: center;
	width: min(100%, 440px);
}

.ck-welcome-gift-image {
	align-items: center;
	aspect-ratio: 16 / 9;
	background: repeating-linear-gradient(135deg, rgba(248, 250, 252, .1) 0, rgba(248, 250, 252, .1) 12px, rgba(148, 163, 184, .14) 12px, rgba(148, 163, 184, .14) 24px);
	border: 1px dashed #64748b;
	border-radius: 10px;
	color: #cbd5e1;
	display: flex;
	font-weight: 900;
	justify-content: center;
	margin-top: 14px;
	min-height: 170px;
}

.ck-welcome-gift-dialog h3 {
	color: #fff;
	font-size: 28px;
	line-height: 1.1;
	margin: 0;
}

.ck-welcome-gift-dialog p {
	color: #cbd5e1;
	font-weight: 700;
	margin: 0;
}

.ck-welcome-gift-dialog .ck-button {
	justify-self: center;
	min-width: 160px;
}

.ck-welcome-gift-close {
	align-items: center;
	background: rgba(248, 250, 252, .1);
	border: 1px solid rgba(226, 232, 240, .16);
	border-radius: 999px;
	color: #fff;
	cursor: pointer;
	display: inline-flex;
	font-size: 22px;
	font-weight: 900;
	height: 34px;
	justify-content: center;
	line-height: 1;
	position: absolute;
	right: 12px;
	top: 12px;
	width: 34px;
}

.ck-welcome-gift-close:hover,
.ck-welcome-gift-close:focus {
	background: #f97316;
}
.ck-confirm-modal {
	align-items: center;
	background: rgba(9, 14, 24, .76);
	display: flex;
	inset: 0;
	justify-content: center;
	opacity: 0;
	padding: 18px;
	pointer-events: none;
	position: fixed;
	transition: opacity .16s ease;
	z-index: 100000;
}

.ck-confirm-modal.is-open {
	opacity: 1;
	pointer-events: auto;
}

body.ck-confirm-modal-open {
	overflow: hidden;
}

.ck-confirm-modal-dialog {
	background:
		linear-gradient(180deg, #fff, #fff7ed);
	border: 1px solid #fed7aa;
	border-radius: 12px;
	box-shadow: 0 28px 90px rgba(9, 14, 24, .38);
	display: grid;
	gap: 12px;
	max-width: 430px;
	padding: 24px;
	position: relative;
	text-align: center;
	width: min(100%, 430px);
}

.ck-confirm-modal-kicker {
	color: #ea580c;
	font-size: 11px;
	font-weight: 900;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.ck-confirm-modal-dialog h3 {
	color: var(--ck-ink);
	font-size: 25px;
	line-height: 1.12;
	margin: 0;
}

.ck-confirm-modal-message {
	background: #fff;
	border: 1px solid #fed7aa;
	border-radius: 9px;
	color: #111827;
	font-size: 16px;
	font-weight: 900;
	line-height: 1.35;
	margin: 0;
	padding: 12px;
}

.ck-confirm-modal-warning {
	background: #fffbeb;
	border: 1px solid #fde68a;
	border-radius: 8px;
	color: #92400e;
	font-size: 12px;
	font-weight: 800;
	padding: 9px 10px;
}

.ck-confirm-modal-actions {
	display: grid;
	gap: 10px;
	grid-template-columns: 1fr 1fr;
}

.ck-confirm-modal-actions .ck-button {
	width: 100%;
}

.ck-confirm-modal-close {
	align-items: center;
	background: #fff;
	border: 0;
	border-radius: 999px;
	color: var(--ck-ink);
	cursor: pointer;
	display: inline-flex;
	font-size: 22px;
	font-weight: 900;
	height: 34px;
	justify-content: center;
	line-height: 1;
	position: absolute;
	right: 12px;
	top: 12px;
	width: 34px;
}

.ck-confirm-modal-close:hover,
.ck-confirm-modal-close:focus {
	background: #f97316;
	color: #fff;
}

@media (max-width: 420px) {
	.ck-confirm-modal-actions {
		grid-template-columns: 1fr;
	}
}
/* CardBerus Kingdom dark command dashboard */
.cbk-dashboard-shell {
	--ck-bg: #08131f;
	--ck-panel: #101b2b;
	--ck-panel-2: #172337;
	--ck-border: rgba(148, 163, 184, 0.28);
	--ck-text: #f8fafc;
	--ck-muted: #94a3b8;
	--ck-gold: #f59e0b;
	--ck-orange: #f97316;
	--ck-blue: #38bdf8;
	--ck-green: #22c55e;
	background:
		radial-gradient(circle at 8% 0, rgba(56, 189, 248, .14), transparent 28%),
		radial-gradient(circle at 92% 8%, rgba(245, 158, 11, .18), transparent 30%),
		linear-gradient(145deg, #08131f, #0b1220 52%, #111827);
	border: 1px solid var(--ck-border);
	border-radius: 14px;
	box-shadow: 0 28px 80px rgba(2, 6, 23, .34);
	color: var(--ck-text);
	display: grid;
	gap: 18px;
	margin-left: auto;
	margin-right: auto;
	padding: 24px;
}

.cbk-dashboard-shell .ck-card,
.cbk-dashboard-shell .ck-dashboard-section,
.cbk-dashboard-shell .ck-dashboard-panel {
	background:
		linear-gradient(180deg, rgba(23, 35, 55, .94), rgba(16, 27, 43, .98));
	border: 1px solid var(--ck-border);
	border-radius: 12px;
	box-shadow: 0 18px 45px rgba(2, 6, 23, .22);
	color: var(--ck-text);
}

.cbk-dashboard-shell .ck-section-heading h3,
.cbk-dashboard-shell .ck-dashboard-panel h3,
.cbk-dashboard-shell h2,
.cbk-dashboard-shell h3 {
	color: var(--ck-text);
	letter-spacing: 0;
	text-transform: none;
}

.cbk-dashboard-shell .ck-section-heading p,
.cbk-dashboard-shell small,
.cbk-dashboard-shell .ck-safety {
	color: var(--ck-muted);
}

.cbk-section-kicker,
.cbk-overview-kicker,
.cbk-season-kicker {
	color: var(--ck-gold);
	display: block;
	font-size: 11px;
	font-weight: 900;
	letter-spacing: .09em;
	text-transform: uppercase;
}

.cbk-overview-panel {
	align-items: center;
	background:
		linear-gradient(135deg, rgba(16, 27, 43, .96), rgba(8, 19, 31, .98)),
		radial-gradient(circle at 92% 18%, color-mix(in srgb, var(--cbk-kingdom-accent, #f59e0b) 35%, transparent), transparent 32%);
	border: 1px solid var(--ck-border);
	border-radius: 14px;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, .08), 0 22px 55px rgba(2, 6, 23, .32);
	display: grid;
	gap: 18px;
	grid-template-columns: auto minmax(0, 1fr) auto;
	padding: 22px;
	position: relative;
}

.cbk-overview-panel::before {
	background: linear-gradient(90deg, var(--cbk-kingdom-accent, #f59e0b), transparent);
	border-radius: 999px;
	content: "";
	height: 3px;
	inset: 0 22px auto;
	opacity: .9;
	position: absolute;
}

.cbk-overview-emblem {
	align-items: center;
	aspect-ratio: 1;
	background: linear-gradient(145deg, rgba(245, 158, 11, .24), rgba(56, 189, 248, .08));
	border: 1px solid rgba(245, 158, 11, .42);
	border-radius: 16px;
	box-shadow: inset 0 0 24px rgba(245, 158, 11, .12);
	color: #fff;
	display: flex;
	font-size: 38px;
	font-weight: 900;
	justify-content: center;
	width: 86px;
}

.cbk-overview-copy h2 {
	font-size: clamp(27px, 4vw, 42px);
	line-height: 1.05;
	margin: 4px 0 10px;
}

.cbk-overview-copy p {
	color: #cbd5e1;
	font-weight: 700;
	margin: 10px 0 0;
}

.cbk-overview-meta {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.cbk-overview-meta > span:not(.ck-color-pill) {
	background: rgba(15, 23, 42, .72);
	border: 1px solid var(--ck-border);
	border-radius: 999px;
	color: #e2e8f0;
	font-size: 12px;
	font-weight: 900;
	padding: 6px 10px;
}

.cbk-overview-actions {
	align-items: end;
	display: grid;
	gap: 10px;
	justify-items: end;
	min-width: 190px;
}

.cbk-overview-actions > span {
	color: #e2e8f0;
	font-size: 12px;
	font-weight: 900;
}

.cbk-dashboard-shell .ck-button {
	background: linear-gradient(90deg, #fbbf24, var(--ck-orange));
	border: 0;
	border-radius: 8px;
	box-shadow: 0 12px 22px rgba(249, 115, 22, .2);
	color: #fff !important;
	font-weight: 900;
}

.cbk-dashboard-shell .ck-button.ck-secondary {
	background: rgba(15, 23, 42, .72);
	border: 1px solid var(--ck-border);
	box-shadow: none;
	color: #e2e8f0 !important;
}

.cbk-dashboard-shell .ck-button:hover,
.cbk-dashboard-shell .ck-button:focus {
	filter: brightness(1.06);
	transform: translateY(-1px);
}

.cbk-dashboard-shell .ck-resource-summary {
	padding: 18px;
}

.cbk-dashboard-shell .ck-dashboard-metrics {
	display: grid;
	gap: 12px;
	grid-template-columns: repeat(5, minmax(0, 1fr));
}

.cbk-dashboard-shell .ck-dashboard-metric {
	background: linear-gradient(180deg, rgba(30, 41, 59, .78), rgba(15, 23, 42, .86));
	border: 1px solid var(--ck-border);
	border-radius: 10px;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, .06);
	display: grid;
	gap: 4px;
	min-height: 108px;
	padding: 13px;
	transition: border-color .16s ease, transform .16s ease, box-shadow .16s ease;
}

.cbk-dashboard-shell .ck-dashboard-metric:hover {
	border-color: rgba(245, 158, 11, .5);
	box-shadow: 0 16px 30px rgba(2, 6, 23, .24);
	transform: translateY(-2px);
}

.cbk-dashboard-shell .ck-dashboard-metric i {
	align-items: center;
	background: rgba(56, 189, 248, .1);
	border: 1px solid rgba(56, 189, 248, .28);
	border-radius: 999px;
	color: var(--ck-blue);
	display: inline-flex;
	font-size: 11px;
	font-style: normal;
	font-weight: 900;
	height: 28px;
	justify-content: center;
	width: 36px;
}

.cbk-dashboard-shell .ck-dashboard-metric span {
	color: var(--ck-muted);
	font-size: 10px;
	font-weight: 900;
	letter-spacing: .07em;
	text-transform: uppercase;
}

.cbk-dashboard-shell .ck-dashboard-metric strong {
	color: #fff;
	font-size: clamp(20px, 2.1vw, 28px);
	line-height: 1.03;
	overflow-wrap: anywhere;
}

.cbk-dashboard-shell .ck-dashboard-metric small {
	font-size: 11px;
	font-weight: 800;
}

.cbk-dashboard-shell .cbk-season-card {
	background:
		radial-gradient(circle at 100% 0, rgba(245, 158, 11, .16), transparent 34%),
		linear-gradient(135deg, rgba(23, 35, 55, .98), rgba(12, 20, 33, .98));
	border-color: rgba(245, 158, 11, .28);
	padding: 20px;
}

.cbk-dashboard-shell .cbk-season-name {
	font-size: clamp(24px, 3vw, 34px);
}

.cbk-dashboard-shell .cbk-season-sp {
	background: rgba(15, 23, 42, .72);
	border: 1px solid rgba(245, 158, 11, .34);
	border-radius: 12px;
	padding: 12px 16px;
}

.cbk-dashboard-shell .cbk-season-sp strong {
	color: #fff;
}

.cbk-dashboard-shell .cbk-season-stats-grid {
	display: grid;
	gap: 10px;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	margin-top: 14px;
}

.cbk-dashboard-shell .cbk-season-stats-grid > div,
.cbk-dashboard-shell .ck-power-milestone {
	background: rgba(15, 23, 42, .7);
	border: 1px solid var(--ck-border);
	border-radius: 10px;
	padding: 11px;
}

.cbk-dashboard-shell .cbk-season-stats-grid span {
	color: var(--ck-muted);
	display: block;
	font-size: 10px;
	font-weight: 900;
	letter-spacing: .07em;
	text-transform: uppercase;
}

.cbk-dashboard-shell .cbk-season-stats-grid strong {
	color: #fff;
	font-size: 18px;
}

.cbk-dashboard-shell .cbk-season-progress {
	margin-top: 16px;
}

.cbk-dashboard-shell .cbk-season-progress > div:first-child {
	align-items: center;
	color: #cbd5e1;
	display: flex;
	font-size: 12px;
	font-weight: 900;
	justify-content: space-between;
	margin-bottom: 8px;
}

.cbk-dashboard-shell .ck-progress-track {
	background: rgba(15, 23, 42, .9);
	border: 1px solid rgba(148, 163, 184, .22);
	height: 12px;
}

.cbk-dashboard-shell .ck-progress-track span {
	background: linear-gradient(90deg, var(--ck-gold), var(--ck-orange));
	box-shadow: 0 0 20px rgba(249, 115, 22, .5);
}

.cbk-dashboard-shell .cbk-kingdom-menu {
	padding: 16px;
}

.cbk-dashboard-shell .cbk-kingdom-menu-grid {
	grid-template-columns: repeat(6, minmax(0, 1fr));
}

.cbk-dashboard-shell .cbk-menu-tile {
	background: linear-gradient(180deg, rgba(30, 41, 59, .72), rgba(15, 23, 42, .92));
	border-color: var(--ck-border);
	border-radius: 12px;
	color: #fff;
	min-height: 148px;
	padding: 14px;
}

.cbk-dashboard-shell .cbk-menu-tile:hover {
	border-color: rgba(56, 189, 248, .54);
	box-shadow: 0 18px 34px rgba(56, 189, 248, .12);
}

.cbk-dashboard-shell .cbk-menu-icon {
	border-color: rgba(56, 189, 248, .34);
	height: 120px;
	width: 120px;
}

.cbk-dashboard-shell .cbk-menu-icon img {
	height: 120px;
	width: 120px;
}

.cbk-dashboard-shell .cbk-menu-title {
	color: #fff;
}

.cbk-dashboard-shell .cbk-menu-subtitle {
	color: var(--ck-muted);
}

.cbk-dashboard-shell .cbk-active-auctions {
	padding: 16px;
}

.cbk-dashboard-shell .cbk-auction-empty {
	align-items: center;
	background: rgba(15, 23, 42, .7);
	border: 1px dashed rgba(148, 163, 184, .34);
	border-radius: 12px;
	display: grid;
	gap: 8px;
	justify-items: start;
	padding: 18px;
}

.cbk-dashboard-shell .cbk-auction-empty strong {
	color: #fff;
	font-size: 18px;
}

.cbk-dashboard-shell .cbk-auction-empty span {
	color: var(--ck-muted);
}

.cbk-dashboard-shell .ck-hero-roster-card {
	padding: 16px;
}

.cbk-dashboard-shell .ck-hero-grid-dashboard {
	gap: 16px;
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.cbk-dashboard-shell .ck-hero-grid-dashboard .ck-hero-card {
	background: linear-gradient(180deg, rgba(23, 35, 55, .92), rgba(15, 23, 42, .96));
	border: 1px solid var(--ck-border);
	border-radius: 12px;
	box-shadow: 0 16px 34px rgba(2, 6, 23, .24);
	color: var(--ck-text);
	padding: 10px;
}

.cbk-dashboard-shell .ck-hero-grid-dashboard .ck-hero-image,
.cbk-dashboard-shell .ck-hero-grid-dashboard .ck-hero-empty-frame {
	aspect-ratio: 3 / 4;
	border-radius: 9px;
	height: auto;
	object-fit: cover;
	width: 100%;
}

.cbk-dashboard-shell .ck-hero-card-details {
	gap: 8px;
}

.cbk-dashboard-shell .cbk-hero-name {
	color: #fff;
	font-size: 16px;
}

.cbk-dashboard-shell .cbk-class-badge,
.cbk-dashboard-shell .cbk-level-badge {
	background: rgba(15, 23, 42, .76);
	border: 1px solid var(--ck-border);
	border-radius: 999px;
	color: #e2e8f0;
	font-size: 12px;
	font-weight: 900;
	padding: 5px 8px;
}

.cbk-dashboard-shell .ck-hero-power {
	background: rgba(56, 189, 248, .08);
	border-color: rgba(56, 189, 248, .22);
}

.cbk-dashboard-shell .ck-hero-power strong {
	color: var(--ck-blue);
}

.cbk-dashboard-shell .ck-hero-empty-slot {
	background: rgba(15, 23, 42, .42);
	border: 1px dashed rgba(148, 163, 184, .42);
}

.cbk-dashboard-shell .ck-hero-empty-frame {
	background: rgba(15, 23, 42, .55);
	border: 1px dashed rgba(56, 189, 248, .42);
}

.cbk-dashboard-shell .ck-hero-empty-frame span {
	color: var(--ck-blue);
	font-size: 42px;
}

.cbk-dashboard-shell .ck-daily-quests {
	padding: 16px;
}

.cbk-dashboard-shell .ck-daily-quests .ck-quest-list {
	display: grid;
	gap: 10px;
}

.cbk-dashboard-shell .ck-daily-quests .ck-quest-row {
	align-items: center;
	background: linear-gradient(180deg, rgba(30, 41, 59, .66), rgba(15, 23, 42, .9));
	border: 1px solid var(--ck-border);
	border-radius: 10px;
	display: grid;
	gap: 12px;
	grid-template-columns: 42px minmax(130px, 1fr) minmax(160px, 1.2fr) auto auto;
	min-height: 64px;
	padding: 10px;
}

.cbk-dashboard-shell .ck-quest-icon {
	height: 34px;
	width: 34px;
}

.cbk-dashboard-shell .cbk-quest-main {
	display: grid;
	gap: 4px;
}

.cbk-dashboard-shell .cbk-quest-title {
	color: #fff;
}

.cbk-dashboard-shell .ck-quest-progress {
	justify-self: start;
}

.cbk-dashboard-shell .cbk-quest-rewards {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
}

.cbk-dashboard-shell .cbk-reward-icon {
	background: rgba(56, 189, 248, .1);
	border: 1px solid rgba(56, 189, 248, .24);
	border-radius: 999px;
	color: #dbeafe;
	font-size: 11px;
	font-weight: 900;
	padding: 5px 8px;
}

.cbk-dashboard-shell .cbk-reward-gold,
.cbk-dashboard-shell .cbk-reward-gold_per_100 {
	background: rgba(245, 158, 11, .16);
	border-color: rgba(245, 158, 11, .34);
	color: #fde68a;
}

.cbk-dashboard-shell .ck-quest-status {
	border-radius: 999px;
	font-size: 11px;
	font-weight: 900;
	padding: 7px 9px;
}

.cbk-dashboard-shell .ck-quest-status.is-complete {
	background: rgba(34, 197, 94, .14);
	color: #86efac;
}

.cbk-dashboard-shell .ck-quest-status.is-open {
	background: rgba(245, 158, 11, .16);
	color: #fde68a;
}

.cbk-dashboard-shell .cbk-management-columns {
	align-items: start;
	display: grid;
	gap: 16px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.cbk-dashboard-shell .cbk-management-grid {
	display: grid;
	gap: 10px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.cbk-dashboard-shell .ck-compact-row {
	align-items: center;
	background: linear-gradient(180deg, rgba(30, 41, 59, .66), rgba(15, 23, 42, .9));
	border: 1px solid var(--ck-border);
	border-radius: 10px;
	display: grid;
	gap: 10px;
	grid-template-columns: auto minmax(0, 1fr) auto;
	min-height: 76px;
	padding: 10px;
}

.cbk-dashboard-shell .ck-compact-row > span {
	display: grid;
	gap: 3px;
	min-width: 0;
}

.cbk-dashboard-shell .ck-compact-row strong,
.cbk-dashboard-shell .ck-compact-row small,
.cbk-dashboard-shell .ck-compact-row em {
	background: transparent;
	border: 0;
	color: inherit;
	font-style: normal;
	padding: 0;
}

.cbk-dashboard-shell .cbk-card-title {
	color: #fff;
	font-size: 14px;
}

.cbk-dashboard-shell .cbk-card-level,
.cbk-dashboard-shell .cbk-card-value {
	color: var(--ck-gold);
	font-weight: 900;
}

.cbk-dashboard-shell .ck-compact-row em {
	color: var(--ck-muted);
	font-size: 11px;
}

.cbk-dashboard-shell .cbk-card-icon {
	background: rgba(56, 189, 248, .1);
	border: 1px solid rgba(56, 189, 248, .26);
	border-radius: 999px;
	height: 42px;
	width: 42px;
}

.cbk-dashboard-shell .cbk-empty-state {
	background: rgba(15, 23, 42, .7);
	border: 1px dashed rgba(148, 163, 184, .34);
	border-radius: 10px;
	color: var(--ck-muted);
	padding: 16px;
}

@media (max-width: 1100px) {
	.cbk-dashboard-shell .ck-dashboard-metrics {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.cbk-dashboard-shell .cbk-kingdom-menu-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media (max-width: 860px) {
	.cbk-dashboard-shell {
		padding: 16px;
	}

	.cbk-overview-panel {
		grid-template-columns: 1fr;
	}

	.cbk-overview-actions {
		justify-items: stretch;
	}

	.cbk-dashboard-shell .ck-dashboard-metrics,
	.cbk-dashboard-shell .cbk-season-stats-grid,
	.cbk-dashboard-shell .ck-hero-grid-dashboard,
	.cbk-dashboard-shell .cbk-management-columns,
	.cbk-dashboard-shell .cbk-management-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.cbk-dashboard-shell .ck-daily-quests .ck-quest-row {
		grid-template-columns: 38px minmax(0, 1fr) auto;
	}

	.cbk-dashboard-shell .cbk-quest-rewards,
	.cbk-dashboard-shell .ck-quest-status,
	.cbk-dashboard-shell .ck-daily-quests .ck-quest-row .ck-button {
		grid-column: 2 / -1;
		justify-self: start;
	}
}

@media (max-width: 560px) {
	.cbk-dashboard-shell .ck-dashboard-metrics,
	.cbk-dashboard-shell .cbk-season-stats-grid,
	.cbk-dashboard-shell .ck-hero-grid-dashboard,
	.cbk-dashboard-shell .cbk-management-columns,
	.cbk-dashboard-shell .cbk-management-grid,
	.cbk-dashboard-shell .cbk-kingdom-menu-grid {
		grid-template-columns: 1fr;
	}

	.cbk-dashboard-shell .ck-compact-row {
		grid-template-columns: auto minmax(0, 1fr);
	}

	.cbk-dashboard-shell .ck-compact-row .ck-button {
		grid-column: 1 / -1;
	}
}
/* CardBerus World Store hero cards dashboard match */
.cbk-store-page .cbk-hero-product {
	background: linear-gradient(180deg, rgba(23, 35, 55, .92), rgba(15, 23, 42, .96));
	border: 1px solid rgba(148, 163, 184, .28);
	border-radius: 12px;
	box-shadow: 0 16px 34px rgba(2, 6, 23, .24);
	color: #f8fafc;
	padding: 10px;
}

.cbk-store-page .cbk-hero-product:hover,
.cbk-store-page .cbk-hero-product:focus-within {
	border-color: rgba(56, 189, 248, .54);
	box-shadow: 0 18px 38px rgba(2, 6, 23, .32);
}

.cbk-store-page .cbk-hero-product .cbk-product-media {
	background: rgba(15, 23, 42, .55);
	border: 1px solid rgba(148, 163, 184, .24);
	border-radius: 9px;
}

.cbk-store-page .cbk-hero-product .cbk-product-title-row h4 {
	color: #fff;
	font-size: 16px;
}

.cbk-store-page .cbk-hero-product .cbk-product-title-row > span {
	background: rgba(245, 158, 11, .16);
	border-color: rgba(245, 158, 11, .42);
	color: #fde68a;
}

.cbk-store-page .cbk-hero-product .cbk-product-meta > span:not(.ck-color-pill) {
	background: rgba(15, 23, 42, .76);
	border: 1px solid rgba(148, 163, 184, .28);
	color: #e2e8f0;
}

.cbk-store-page .cbk-hero-product .cbk-power-line {
	background: rgba(56, 189, 248, .08);
	border-color: rgba(56, 189, 248, .22);
}

.cbk-store-page .cbk-hero-product .cbk-power-line strong {
	color: #38bdf8;
}

.cbk-store-page .cbk-hero-product .cbk-stat-grid span {
	background: rgba(30, 41, 59, .78);
	border-color: rgba(148, 163, 184, .24);
	color: #e5edf8;
}

.cbk-store-page .cbk-hero-product .cbk-skill-preview {
	color: #cbd5e1;
}

.cbk-store-page .cbk-hero-product .cbk-owned-pill {
	background: rgba(245, 158, 11, .16);
	border-color: rgba(245, 158, 11, .42);
	color: #fde68a;
}

.cbk-store-page .cbk-product-card .ck-button[disabled],
.cbk-store-page .cbk-product-card button[disabled],
.cbk-store-page .cbk-product-card .ck-button.ck-secondary[disabled],
.cbk-store-page .cbk-product-card button.ck-secondary[disabled] {
	background: rgba(15, 23, 42, .78) !important;
	border: 1px solid rgba(148, 163, 184, .3) !important;
	box-shadow: none;
	color: #cbd5e1 !important;
	opacity: 1;
}

.cbk-dashboard-shell .cbk-season-actions .ck-button.ck-secondary,
.cbk-dashboard-shell .cbk-season-actions button.ck-secondary {
	background: rgba(15, 23, 42, .82) !important;
	border: 1px solid rgba(148, 163, 184, .32) !important;
	box-shadow: none;
	color: #e2e8f0 !important;
}

.cbk-dashboard-shell .cbk-season-actions .ck-button.ck-secondary:hover,
.cbk-dashboard-shell .cbk-season-actions button.ck-secondary:hover,
.cbk-dashboard-shell .cbk-season-actions .ck-button.ck-secondary:focus,
.cbk-dashboard-shell .cbk-season-actions button.ck-secondary:focus {
	background: rgba(30, 41, 59, .92) !important;
	color: #fff !important;
}
/* Dashboard Hero Roster uses World Store card family */
.cbk-dashboard-shell .ck-hero-grid-dashboard {
	align-items: stretch;
	display: grid;
	gap: 16px;
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.cbk-dashboard-shell .ck-hero-grid-dashboard .cbk-product-card {
	display: grid;
	grid-template-rows: auto 1fr;
	height: 100%;
	min-width: 0;
	text-decoration: none;
}

.cbk-dashboard-shell .ck-hero-grid-dashboard .cbk-product-body {
	display: grid;
	grid-template-rows: auto auto auto auto auto auto 1fr;
}

.cbk-dashboard-shell .ck-hero-grid-dashboard .cbk-product-footer {
	align-self: end;
	margin-top: auto;
}

.cbk-dashboard-shell .ck-hero-grid-dashboard .cbk-product-media {
	aspect-ratio: 3 / 4;
	background: rgba(15, 23, 42, .55);
	border: 1px solid rgba(148, 163, 184, .24);
	border-radius: 9px;
	overflow: hidden;
}

.cbk-dashboard-shell .ck-hero-grid-dashboard .cbk-product-media .ck-image-lightbox-trigger,
.cbk-dashboard-shell .ck-hero-grid-dashboard .cbk-product-media .cbk-hero-image-wrap,
.cbk-dashboard-shell .ck-hero-grid-dashboard .cbk-product-media img,
.cbk-dashboard-shell .ck-hero-grid-dashboard .cbk-product-media .ck-hero-image {
	height: 100%;
	max-height: none;
	object-fit: cover;
	width: 100%;
}

.cbk-dashboard-shell .ck-hero-grid-dashboard .cbk-hero-product {
	background: linear-gradient(180deg, rgba(23, 35, 55, .92), rgba(15, 23, 42, .96));
	border: 1px solid rgba(148, 163, 184, .28);
	border-radius: 12px;
	box-shadow: 0 16px 34px rgba(2, 6, 23, .24);
	color: #f8fafc;
	padding: 10px;
}

.cbk-dashboard-shell .ck-hero-grid-dashboard .cbk-hero-product:hover,
.cbk-dashboard-shell .ck-hero-grid-dashboard .cbk-hero-product:focus-within {
	border-color: rgba(56, 189, 248, .54);
	box-shadow: 0 18px 38px rgba(2, 6, 23, .32);
	transform: translateY(-2px);
}

.cbk-dashboard-shell .ck-hero-grid-dashboard .cbk-product-title-row h4 {
	color: #fff;
	font-size: 16px;
}

.cbk-dashboard-shell .ck-hero-grid-dashboard .cbk-product-title-row > span,
.cbk-dashboard-shell .ck-hero-grid-dashboard .cbk-owned-pill {
	background: rgba(245, 158, 11, .16);
	border-color: rgba(245, 158, 11, .42);
	color: #fde68a;
}

.cbk-dashboard-shell .ck-hero-grid-dashboard .cbk-product-meta > span:not(.ck-color-pill) {
	background: rgba(15, 23, 42, .76);
	border: 1px solid rgba(148, 163, 184, .28);
	color: #e2e8f0;
}

.cbk-dashboard-shell .ck-hero-grid-dashboard .cbk-power-line {
	background: rgba(56, 189, 248, .08);
	border-color: rgba(56, 189, 248, .22);
}

.cbk-dashboard-shell .ck-hero-grid-dashboard .cbk-power-line strong {
	color: #38bdf8;
}

.cbk-dashboard-shell .ck-hero-grid-dashboard .cbk-stat-grid span {
	background: rgba(30, 41, 59, .78);
	border-color: rgba(148, 163, 184, .24);
	color: #e5edf8;
}

.cbk-dashboard-shell .ck-hero-grid-dashboard .cbk-skill-preview {
	color: #cbd5e1;
}

.cbk-dashboard-shell .ck-hero-grid-dashboard .cbk-empty-hero-slot {
	border-style: dashed;
}

.cbk-dashboard-shell .ck-hero-grid-dashboard .ck-hero-empty-frame {
	align-items: center;
	display: flex;
	justify-content: center;
}

.cbk-dashboard-shell .ck-hero-grid-dashboard .ck-hero-empty-frame span {
	color: #38bdf8;
	font-size: 48px;
	font-weight: 900;
}

@media (max-width: 860px) {
	.cbk-dashboard-shell .ck-hero-grid-dashboard {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 560px) {
	.cbk-dashboard-shell .ck-hero-grid-dashboard {
		grid-template-columns: 1fr;
	}
}
.cbk-dashboard-shell .ck-hero-grid-dashboard .cbk-hero-actions .ck-button.ck-secondary,
.cbk-dashboard-shell .ck-hero-grid-dashboard .cbk-hero-actions button.ck-secondary,
.cbk-dashboard-shell .ck-hero-grid-dashboard .cbk-hero-actions a.ck-secondary {
	background: rgba(15, 23, 42, .82) !important;
	border: 1px solid rgba(148, 163, 184, .34) !important;
	color: #f8fafc !important;
}

.cbk-dashboard-shell .ck-hero-grid-dashboard .cbk-hero-actions .ck-button.ck-secondary:hover,
.cbk-dashboard-shell .ck-hero-grid-dashboard .cbk-hero-actions button.ck-secondary:hover,
.cbk-dashboard-shell .ck-hero-grid-dashboard .cbk-hero-actions a.ck-secondary:hover,
.cbk-dashboard-shell .ck-hero-grid-dashboard .cbk-hero-actions .ck-button.ck-secondary:focus,
.cbk-dashboard-shell .ck-hero-grid-dashboard .cbk-hero-actions button.ck-secondary:focus,
.cbk-dashboard-shell .ck-hero-grid-dashboard .cbk-hero-actions a.ck-secondary:focus {
	background: rgba(30, 41, 59, .96) !important;
	border-color: rgba(56, 189, 248, .5) !important;
	color: #fff !important;
}

.cbk-dashboard-shell .ck-hero-grid-dashboard .cbk-hero-actions .ck-button.ck-secondary[disabled],
.cbk-dashboard-shell .ck-hero-grid-dashboard .cbk-hero-actions button.ck-secondary[disabled] {
	background: rgba(30, 41, 59, .72) !important;
	border-color: rgba(148, 163, 184, .24) !important;
	color: rgba(248, 250, 252, .72) !important;
	cursor: not-allowed;
}
/* Heroes page matches the dashboard roster card system. */
.cbk-heroes-page-shell.ck-card {
	background: transparent;
	border: 0;
	box-shadow: none;
}

.cbk-heroes-page-shell .cbk-heroes-roster-panel {
	background: linear-gradient(180deg, rgba(15, 23, 42, .96), rgba(8, 13, 26, .98));
	border: 1px solid rgba(148, 163, 184, .22);
	border-radius: 16px;
	box-shadow: 0 22px 48px rgba(2, 6, 23, .28);
	padding: 18px;
}

.cbk-heroes-page-shell .cbk-section-heading {
	align-items: flex-start;
	display: flex;
	gap: 18px;
	justify-content: space-between;
	margin-bottom: 16px;
}

.cbk-heroes-page-shell .cbk-kicker {
	color: #38bdf8;
	display: block;
	font-size: 12px;
	font-weight: 800;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.cbk-heroes-page-shell .cbk-section-heading h2 {
	color: #f8fafc;
	font-size: 30px;
	line-height: 1.15;
	margin: 4px 0 0;
}

.cbk-heroes-page-shell .cbk-roster-currency {
	align-items: center;
	background: rgba(15, 23, 42, .72);
	border: 1px solid rgba(148, 163, 184, .24);
	border-radius: 12px;
	display: grid;
	gap: 2px 10px;
	grid-template-columns: auto auto;
	padding: 10px 12px;
}

.cbk-heroes-page-shell .cbk-roster-currency strong {
	color: #fbbf24;
	font-size: 18px;
	line-height: 1;
}

.cbk-heroes-page-shell .cbk-roster-currency span {
	color: #cbd5e1;
	font-size: 12px;
	font-weight: 700;
}

.cbk-heroes-page-shell .cbk-heroes-filter {
	background: rgba(15, 23, 42, .56);
	border: 1px solid rgba(148, 163, 184, .18);
	border-radius: 12px;
	gap: 10px;
	margin: 0 0 16px;
	padding: 12px;
}

.cbk-heroes-page-shell .cbk-heroes-filter input {
	background: rgba(248, 250, 252, .96);
	border-color: rgba(148, 163, 184, .35);
	border-radius: 9px;
	min-height: 42px;
}

.cbk-heroes-page-shell .cbk-heroes-filter .ck-button.ck-secondary {
	background: rgba(15, 23, 42, .9) !important;
	border: 1px solid rgba(148, 163, 184, .34) !important;
	color: #fff !important;
}

.cbk-heroes-page-shell .ck-kingdom-return {
	margin-top: 16px;
}

@media (max-width: 720px) {
	.cbk-heroes-page-shell .cbk-section-heading {
		display: block;
	}

	.cbk-heroes-page-shell .cbk-roster-currency {
		margin-top: 12px;
	}
}
/* Dashboard mobile organization pass. */
.cbk-dashboard-shell .ck-dashboard-metric .cbk-metric-label {
	align-items: center;
	display: flex;
	gap: 7px;
	min-width: 0;
}

.cbk-dashboard-shell .ck-dashboard-metric .cbk-metric-label span {
	line-height: 1.15;
}

@media (min-width: 561px) and (max-width: 991px) {
	.cbk-dashboard-shell .cbk-management-columns {
		grid-template-columns: 1fr;
	}

	.cbk-dashboard-shell .cbk-management-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 560px) {
	.cbk-dashboard-shell {
		gap: 14px;
		padding: 12px;
	}

	.cbk-dashboard-shell .cbk-kingdom-menu {
		padding: 12px;
	}

	.cbk-dashboard-shell .cbk-kingdom-menu-grid {
		gap: 8px;
		grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	}

	.cbk-dashboard-shell .cbk-menu-tile {
		align-items: center;
		gap: 7px;
		min-height: 112px;
		padding: 9px 6px;
		text-align: center;
	}

	.cbk-dashboard-shell .cbk-menu-title {
		font-size: 11px;
		line-height: 1.15;
	}

	.cbk-dashboard-shell .cbk-menu-subtitle {
		display: none;
	}

	.cbk-dashboard-shell .ck-dashboard-metrics {
		grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
	}

	.cbk-dashboard-shell .ck-dashboard-metric {
		grid-column: span 2;
		min-height: 92px;
		padding: 10px 8px;
	}

	.cbk-dashboard-shell .ck-dashboard-metric.cbk-stat-power,
	.cbk-dashboard-shell .ck-dashboard-metric.cbk-stat-xp {
		grid-column: span 3;
	}
	.cbk-dashboard-shell .ck-dashboard-metric.cbk-stat-xp { order: 1; }
	.cbk-dashboard-shell .ck-dashboard-metric.cbk-stat-power { order: 2; }
	.cbk-dashboard-shell .ck-dashboard-metric.cbk-stat-gold { order: 3; }
	.cbk-dashboard-shell .ck-dashboard-metric.cbk-stat-hero_shards { order: 4; }
	.cbk-dashboard-shell .ck-dashboard-metric.cbk-stat-materials { order: 5; }
	.cbk-dashboard-shell .ck-dashboard-metric.cbk-stat-army_capacity { order: 6; }
	.cbk-dashboard-shell .ck-dashboard-metric.cbk-stat-season_points { order: 7; }
	.cbk-dashboard-shell .ck-dashboard-metric.cbk-stat-rank { order: 8; }
	.cbk-dashboard-shell .ck-dashboard-metric.cbk-stat-attack_energy { order: 9; }
	.cbk-dashboard-shell .ck-dashboard-metric.cbk-stat-buildings_owned { order: 10; }
	.cbk-dashboard-shell .ck-dashboard-metric.cbk-stat-buyout_passes { order: 11; }

	.cbk-dashboard-shell .ck-dashboard-metric .cbk-metric-label {
		gap: 5px;
	}

	.cbk-dashboard-shell .ck-dashboard-metric i {
		font-size: 9px;
		height: 22px;
		min-width: 28px;
		width: 28px;
	}

	.cbk-dashboard-shell .ck-dashboard-metric span {
		font-size: 9px;
		letter-spacing: .04em;
	}

	.cbk-dashboard-shell .ck-dashboard-metric strong {
		font-size: clamp(16px, 5vw, 22px);
	}

	.cbk-dashboard-shell .ck-dashboard-metric small {
		font-size: 10px;
	}

	.cbk-dashboard-shell .cbk-season-stats-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}

	.cbk-dashboard-shell .ck-daily-quests .ck-quest-list {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.cbk-dashboard-shell .ck-daily-quests .ck-quest-row {
		align-content: start;
		grid-template-columns: 30px minmax(0, 1fr) !important;
		min-height: 168px;
		padding: 9px;
	}

	.cbk-dashboard-shell .ck-daily-quests .ck-quest-row .ck-quest-icon {
		height: 30px;
		width: 30px;
	}

	.cbk-dashboard-shell .ck-daily-quests .ck-quest-row .cbk-quest-rewards,
	.cbk-dashboard-shell .ck-daily-quests .ck-quest-row .ck-quest-status,
	.cbk-dashboard-shell .ck-daily-quests .ck-quest-row .ck-button {
		grid-column: 1 / -1;
		justify-self: start;
	}

	.cbk-dashboard-shell .cbk-quest-title {
		font-size: 12px;
		line-height: 1.2;
	}

	.cbk-dashboard-shell .ck-quest-progress,
	.cbk-dashboard-shell .cbk-reward-icon,
	.cbk-dashboard-shell .ck-quest-status {
		font-size: 10px;
	}

	.cbk-dashboard-shell .cbk-management-columns {
		grid-template-columns: 1fr !important;
	}

	.cbk-dashboard-shell .cbk-management-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}

	.cbk-dashboard-shell .ck-compact-row {
		align-content: start;
		grid-template-columns: 38px minmax(0, 1fr) !important;
		min-height: 118px;
		padding: 9px;
	}

	.cbk-dashboard-shell .ck-compact-row .ck-button {
		font-size: 11px;
		grid-column: 1 / -1;
		justify-self: stretch;
		padding: 8px 10px;
	}

	.cbk-dashboard-shell .cbk-card-icon {
		height: 36px;
		width: 36px;
	}

	.cbk-dashboard-shell .cbk-card-title {
		font-size: 12px;
		line-height: 1.2;
	}

	.cbk-dashboard-shell .cbk-card-level,
	.cbk-dashboard-shell .cbk-card-value,
	.cbk-dashboard-shell .ck-compact-row em {
		font-size: 10px;
	}
}
/* Train Units and Buildings use World Store dark card layout. */
.cbk-upgrade-page {
	background: linear-gradient(145deg, #08131f, #0b1220 52%, #111827);
	border: 1px solid rgba(148, 163, 184, .24);
	border-radius: 16px;
	box-shadow: 0 28px 80px rgba(2, 6, 23, .32);
	color: #f8fafc;
	display: grid;
	gap: 18px;
	padding: 20px;
}

.cbk-upgrade-page .ck-kingdom-return {
	margin-top: 0;
}

.cbk-upgrade-hero {
	align-items: center;
	grid-template-columns: minmax(0, 1fr) minmax(280px, .65fr);
}

.cbk-upgrade-hero h2 {
	color: #fff;
	font-size: clamp(30px, 4vw, 48px);
	letter-spacing: 0;
	margin: 4px 0 8px;
}

.cbk-upgrade-hero p,
.cbk-upgrade-panel .cbk-section-head p {
	color: #cbd5e1;
}

.cbk-upgrade-panel {
	background: linear-gradient(180deg, rgba(15, 23, 42, .92), rgba(8, 13, 26, .98));
	border: 1px solid rgba(148, 163, 184, .22);
	border-radius: 14px;
	padding: 16px;
}

.cbk-upgrade-grid {
	align-items: stretch;
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.cbk-upgrade-grid .cbk-product-card {
	background: linear-gradient(180deg, rgba(23, 35, 55, .92), rgba(15, 23, 42, .96));
	border-color: rgba(148, 163, 184, .28);
	box-shadow: 0 16px 34px rgba(2, 6, 23, .24);
	grid-template-rows: auto 1fr;
	height: 100%;
}

.cbk-upgrade-grid .cbk-product-body {
	display: grid;
	grid-template-rows: auto auto auto auto auto 1fr;
}

.cbk-upgrade-grid .cbk-product-footer,
.cbk-upgrade-grid .cbk-unit-form {
	align-self: end;
	margin-top: auto;
}

.cbk-upgrade-grid .cbk-product-media {
	background: rgba(15, 23, 42, .55);
	border: 1px solid rgba(148, 163, 184, .24);
}

.cbk-building-media,
.cbk-unit-media {
	align-items: center;
	aspect-ratio: 1 / 1;
	display: flex;
	justify-content: center;
}

.cbk-building-media .ck-avatar,
.cbk-unit-media .ck-avatar {
	height: 100%;
	max-height: none;
	width: 100%;
}

.cbk-unit-media .ck-hero-image {
	aspect-ratio: 1 / 1;
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.cbk-building-avatar {
	background: linear-gradient(145deg, rgba(245, 158, 11, .28), rgba(56, 189, 248, .12));
	border: 1px solid rgba(245, 158, 11, .4);
	border-radius: 10px;
	color: #fff;
	font-size: 44px;
}

.cbk-upgrade-cost {
	background: rgba(245, 158, 11, .12);
	border: 1px solid rgba(245, 158, 11, .3);
	border-radius: 10px;
	display: grid;
	gap: 5px;
	padding: 10px;
}

.cbk-upgrade-cost span {
	color: #fde68a;
	font-size: 11px;
	font-weight: 900;
	letter-spacing: .06em;
	text-transform: uppercase;
}

.cbk-upgrade-cost strong {
	color: #fff;
	font-size: 14px;
	line-height: 1.3;
}

.cbk-train-form {
	grid-template-columns: 92px minmax(0, 1fr);
}

.cbk-train-form input[type="number"] {
	background: rgba(248, 250, 252, .96);
	border: 1px solid rgba(148, 163, 184, .36);
	border-radius: 8px;
	font-weight: 800;
	min-height: 42px;
	padding: 8px 10px;
	width: 100%;
}

.cbk-train-form .ck-button {
	min-height: 42px;
}

@media (max-width: 1100px) {
	.cbk-upgrade-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media (max-width: 860px) {
	.cbk-upgrade-page {
		padding: 14px;
	}

	.cbk-upgrade-hero {
		grid-template-columns: 1fr;
	}

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

@media (max-width: 560px) {
	.cbk-upgrade-grid {
		grid-template-columns: 1fr;
	}

	.cbk-train-form {
		grid-template-columns: 1fr;
	}
}
.cbk-upgrade-page .cbk-store-panel {
	display: block;
}
/* Buildings and Train resource wallet cards. */
.cbk-upgrade-page .cbk-store-wallet {
	align-self: stretch;
	display: grid;
	gap: 10px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	min-width: 0;
}

.cbk-upgrade-page .cbk-store-wallet > div {
	background: linear-gradient(180deg, rgba(30, 41, 59, .78), rgba(15, 23, 42, .92));
	border: 1px solid rgba(148, 163, 184, .24);
	border-radius: 11px;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, .06);
	display: grid;
	gap: 5px;
	min-width: 0;
	padding: 11px;
}

.cbk-upgrade-page .cbk-store-wallet span {
	color: #94a3b8;
	font-size: 10px;
	font-weight: 900;
	letter-spacing: .07em;
	line-height: 1.1;
	text-transform: uppercase;
}

.cbk-upgrade-page .cbk-store-wallet strong {
	color: #fff;
	font-size: clamp(16px, 2vw, 22px);
	line-height: 1.05;
	overflow-wrap: anywhere;
}

@media (max-width: 560px) {
	.cbk-upgrade-page .cbk-store-wallet {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}
/* Building current and next-level effect cards. */
.cbk-building-effect-grid span {
	display: grid;
	gap: 4px;
}

.cbk-building-effect-grid em {
	color: #94a3b8;
	font-size: 10px;
	font-style: normal;
	font-weight: 900;
	letter-spacing: .05em;
	text-transform: uppercase;
}

.cbk-building-effect-grid strong {
	color: #fff;
	font-size: 15px;
	line-height: 1.1;
}
.cbk-upgrade-grid .ck-button.ck-secondary {
	background: rgba(15, 23, 42, .82) !important;
	border: 1px solid rgba(148, 163, 184, .34) !important;
	box-shadow: none;
	color: #f8fafc !important;
}

.cbk-upgrade-grid .ck-button.ck-secondary:hover,
.cbk-upgrade-grid .ck-button.ck-secondary:focus {
	background: rgba(30, 41, 59, .96) !important;
	border-color: rgba(56, 189, 248, .5) !important;
	color: #fff !important;
}
/* Building gameplay detail rows. */
.cbk-building-effect-list {
	display: grid;
	gap: 8px;
}

.cbk-building-effect-row {
	background: rgba(30, 41, 59, .72);
	border: 1px solid rgba(148, 163, 184, .22);
	border-radius: 10px;
	display: grid;
	gap: 8px;
	grid-template-columns: minmax(0, 1.35fr) minmax(72px, .6fr) minmax(72px, .6fr);
	padding: 9px;
}

.cbk-building-effect-row div {
	display: grid;
	gap: 3px;
	min-width: 0;
}

.cbk-building-effect-row em,
.cbk-building-effect-row b {
	color: #94a3b8;
	font-size: 10px;
	font-style: normal;
	font-weight: 900;
	letter-spacing: .05em;
	line-height: 1.1;
	text-transform: uppercase;
}

.cbk-building-effect-row small {
	color: #cbd5e1;
	font-size: 11px;
	font-weight: 700;
	line-height: 1.25;
}

.cbk-building-effect-row span {
	background: rgba(15, 23, 42, .48);
	border: 1px solid rgba(148, 163, 184, .16);
	border-radius: 8px;
	display: grid;
	gap: 4px;
	padding: 7px;
}

.cbk-building-effect-row strong {
	color: #fff;
	font-size: 14px;
	line-height: 1.1;
}

@media (max-width: 560px) {
	.cbk-building-effect-row {
		grid-template-columns: 1fr 1fr;
	}

	.cbk-building-effect-row div {
		grid-column: 1 / -1;
	}
}
/* Square building artwork placeholders. */
.cbk-buildings-page .cbk-building-media {
	aspect-ratio: 1 / 1;
}
/* Mobile kingdom menu icon size. */
@media (max-width: 560px) {
	.cbk-dashboard-shell .cbk-kingdom-menu .cbk-menu-icon,
	.cbk-dashboard-shell .cbk-kingdom-menu .cbk-menu-icon img {
		height: 80px;
		width: 80px;
	}
}
/* Dark fantasy rankings page. */
.cbk-rankings-page {
	max-width: 1400px;
}

.cbk-rankings-page .ck-back-link {
	color: #7dd3fc;
	font-weight: 900;
	text-decoration: none;
	width: max-content;
}

.cbk-rankings-hero .cbk-overview-emblem {
	font-size: 48px;
}

.cbk-rankings-page .cbk-overview-actions {
	min-width: 176px;
}

.cbk-rankings-page .cbk-overview-actions .ck-button {
	align-items: center;
	display: inline-flex;
	font-size: 14px;
	font-weight: 1000;
	justify-content: center;
	min-height: 48px;
	min-width: 160px;
	padding: 13px 18px;
}

.cbk-rankings-page .cbk-command-ledger {
	display: grid;
	gap: 12px;
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.cbk-rankings-page .cbk-ledger-card {
	background: linear-gradient(180deg, rgba(23, 35, 55, .92), rgba(15, 23, 42, .96));
	border: 1px solid var(--ck-border);
	border-radius: 12px;
	box-shadow: 0 16px 34px rgba(2, 6, 23, .2);
	padding: 16px;
}

.cbk-rankings-page .cbk-ledger-card span {
	color: var(--ck-muted);
	display: block;
	font-size: 11px;
	font-weight: 900;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.cbk-rankings-page .cbk-ledger-card strong {
	color: #fff;
	display: block;
	font-size: clamp(22px, 3vw, 32px);
	line-height: 1.05;
	margin-top: 8px;
}

.cbk-ranking-board {
	padding: 18px;
}

.cbk-ranking-table-wrap {
	overflow-x: auto;
	padding-bottom: 4px;
}

.cbk-ranking-table {
	border-collapse: separate;
	border-spacing: 0 8px;
	min-width: 980px;
}

.cbk-ranking-table th {
	background: transparent;
	border: 0;
	color: #94a3b8;
	font-size: 11px;
	font-weight: 900;
	letter-spacing: .08em;
	padding: 8px 12px;
	text-transform: uppercase;
}

.cbk-ranking-table td {
	background: rgba(15, 23, 42, .72);
	border-bottom: 1px solid rgba(148, 163, 184, .18);
	border-top: 1px solid rgba(148, 163, 184, .18);
	color: #dbe7f5;
	padding: 13px 12px;
	vertical-align: middle;
}

.cbk-ranking-table td:first-child {
	border-left: 1px solid rgba(148, 163, 184, .18);
	border-radius: 10px 0 0 10px;
}

.cbk-ranking-table td:last-child {
	border-radius: 0 10px 10px 0;
	border-right: 1px solid rgba(148, 163, 184, .18);
}

.cbk-ranking-table strong {
	color: #fff;
}

.cbk-rank-number {
	align-items: center;
	background: rgba(56, 189, 248, .12);
	border: 1px solid rgba(56, 189, 248, .28);
	border-radius: 999px;
	color: #7dd3fc;
	display: inline-flex;
	font-size: 12px;
	font-weight: 900;
	height: 30px;
	justify-content: center;
	min-width: 42px;
	padding: 0 10px;
}

.cbk-ranking-table tr.cbk-top-rank-row td {
	background:
		linear-gradient(90deg, rgba(245, 158, 11, .16), rgba(15, 23, 42, .78));
	border-color: rgba(245, 158, 11, .34);
}

.cbk-ranking-table tr.cbk-current-user-row td {
	box-shadow: inset 0 0 0 1px rgba(56, 189, 248, .42);
}

.cbk-ranking-podium {
	display: grid;
	gap: 14px;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	margin-top: 18px;
}

.cbk-rank-card {
	background:
		radial-gradient(circle at 100% 0, rgba(245, 158, 11, .18), transparent 28%),
		linear-gradient(180deg, rgba(23, 35, 55, .94), rgba(15, 23, 42, .98));
	border: 1px solid rgba(148, 163, 184, .26);
	border-radius: 14px;
	box-shadow: 0 18px 42px rgba(2, 6, 23, .24);
	color: #e2e8f0;
	position: relative;
}

.cbk-rank-card.is-current {
	box-shadow: 0 0 0 1px rgba(56, 189, 248, .48), 0 18px 42px rgba(2, 6, 23, .24);
}

.cbk-rank-card-top {
	display: grid;
	gap: 12px;
	min-height: 310px;
	padding: 18px;
}

.cbk-rank-1 {
	border-color: rgba(245, 158, 11, .58);
	transform: translateY(-8px);
}

.cbk-rank-2 {
	border-color: rgba(203, 213, 225, .48);
}

.cbk-rank-3 {
	border-color: rgba(180, 83, 9, .52);
}

.cbk-rank-medal {
	align-items: center;
	background: linear-gradient(135deg, #fbbf24, #f97316);
	border-radius: 999px;
	box-shadow: 0 12px 28px rgba(249, 115, 22, .28);
	color: #111827;
	display: inline-flex;
	font-size: 13px;
	font-weight: 1000;
	height: 34px;
	justify-content: center;
	justify-self: start;
	min-width: 54px;
	padding: 0 12px;
}

.cbk-rank-emblem {
	align-items: center;
	aspect-ratio: 1;
	background: linear-gradient(145deg, rgba(245, 158, 11, .24), rgba(56, 189, 248, .08));
	border: 1px solid rgba(245, 158, 11, .38);
	border-radius: 16px;
	color: #fff;
	display: flex;
	font-size: 38px;
	font-weight: 1000;
	justify-content: center;
	width: 92px;
}

.cbk-rank-main {
	display: grid;
	gap: 4px;
}

.cbk-rank-main h4 {
	color: #fff;
	font-size: 22px;
	line-height: 1.05;
	margin: 0;
}

.cbk-rank-power {
	background: rgba(56, 189, 248, .08);
	border: 1px solid rgba(56, 189, 248, .24);
	border-radius: 12px;
	display: grid;
	gap: 4px;
	padding: 12px;
}

.cbk-rank-power span,
.cbk-rank-row-power span,
.cbk-rank-stats em {
	color: #94a3b8;
	font-size: 10px;
	font-style: normal;
	font-weight: 900;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.cbk-rank-power strong {
	color: #38bdf8;
	font-size: 30px;
	line-height: 1;
}

.cbk-rank-stats {
	display: grid;
	gap: 8px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.cbk-rank-stats span,
.cbk-rank-row-stats span {
	background: rgba(15, 23, 42, .72);
	border: 1px solid rgba(148, 163, 184, .22);
	border-radius: 10px;
	display: grid;
	gap: 3px;
	padding: 9px 10px;
}

.cbk-rank-stats strong,
.cbk-rank-row-stats strong,
.cbk-rank-row-power strong {
	color: #fff;
}

.cbk-ranking-list {
	display: grid;
	gap: 10px;
	margin-top: 14px;
}

.cbk-rank-card-row {
	align-items: center;
	display: grid;
	gap: 14px;
	grid-template-columns: auto minmax(180px, 1fr) minmax(150px, .7fr) minmax(320px, 1.4fr);
	padding: 13px 14px;
}

.cbk-rank-card-row .cbk-rank-main h4 {
	font-size: 16px;
}

.cbk-rank-row-power {
	display: grid;
	gap: 3px;
}

.cbk-rank-row-stats {
	display: grid;
	gap: 8px;
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.cbk-rank-row-stats span {
	display: block;
	font-size: 12px;
	font-weight: 800;
}

.cbk-rankings-page .ck-button.ck-secondary {
	background: rgba(15, 23, 42, .7);
	border: 1px solid var(--ck-border);
	color: #f8fafc;
}

@media (max-width: 991px) {
	.cbk-rankings-page .cbk-overview-panel {
		grid-template-columns: 1fr;
	}

	.cbk-rankings-page .cbk-overview-actions {
		justify-items: stretch;
		min-width: 0;
		width: 100%;
	}

	.cbk-rankings-page .cbk-command-ledger {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.cbk-ranking-podium {
		grid-template-columns: 1fr;
	}

	.cbk-rank-1 {
		transform: none;
	}

	.cbk-rank-card-row {
		grid-template-columns: auto minmax(0, 1fr);
	}

	.cbk-rank-row-power,
	.cbk-rank-row-stats {
		grid-column: 1 / -1;
	}
}

@media (max-width: 560px) {
	.cbk-rankings-page {
		border-radius: 0;
		padding: 14px;
	}

	.cbk-rankings-page .cbk-command-ledger {
		grid-template-columns: 1fr 1fr;
	}

	.cbk-rankings-page .cbk-ledger-card {
		padding: 12px;
	}

	.cbk-rankings-page .cbk-ledger-card strong {
		font-size: 20px;
	}

	.cbk-ranking-board {
		padding: 12px;
	}

	.cbk-rank-card-top {
		min-height: 0;
	}

	.cbk-rank-stats,
	.cbk-rank-row-stats {
		grid-template-columns: 1fr;
	}
}
/* Mobile dashboard quest and summary card cleanup. */
.cbk-dashboard-shell .cbk-clickable-card {
	color: inherit;
	text-decoration: none;
}

.cbk-dashboard-shell .cbk-clickable-card:hover,
.cbk-dashboard-shell .cbk-clickable-card:focus {
	border-color: rgba(56, 189, 248, .5);
	box-shadow: 0 16px 30px rgba(2, 6, 23, .26);
	transform: translateY(-2px);
}

@media (max-width: 560px) {
	.cbk-dashboard-shell .ck-daily-quests {
		padding: 12px;
	}

	.cbk-dashboard-shell .ck-daily-quests .ck-quest-list {
		gap: 9px;
	}

	.cbk-dashboard-shell .ck-daily-quests .ck-quest-row {
		grid-template-columns: 28px minmax(0, 1fr) !important;
		min-height: 0;
		padding: 9px;
	}

	.cbk-dashboard-shell .ck-daily-quests .ck-quest-row .ck-quest-icon {
		height: 28px;
		width: 28px;
	}

	.cbk-dashboard-shell .ck-daily-quests .ck-quest-row .ck-quest-icon span,
	.cbk-dashboard-shell .ck-daily-quests .ck-quest-row .ck-quest-icon {
		font-size: 11px;
	}

	.cbk-dashboard-shell .ck-daily-quests .cbk-quest-main {
		gap: 5px;
	}

	.cbk-dashboard-shell .ck-daily-quests .cbk-quest-title {
		font-size: 12px;
		line-height: 1.12;
	}

	.cbk-dashboard-shell .ck-daily-quests .ck-quest-progress {
		font-size: 10px;
		padding: 5px 7px;
	}

	.cbk-dashboard-shell .ck-daily-quests .cbk-quest-rewards {
		gap: 5px;
	}

	.cbk-dashboard-shell .ck-daily-quests .cbk-reward-icon {
		font-size: 10px;
		padding: 4px 7px;
	}

	.cbk-dashboard-shell .ck-daily-quests .ck-quest-status {
		font-size: 10px;
		padding: 5px 7px;
	}

	.cbk-dashboard-shell .ck-daily-quests .ck-button {
		font-size: 12px;
		min-height: 38px;
		padding: 8px 10px;
		width: 100%;
	}

	.cbk-dashboard-shell .ck-compact-row {
		grid-template-columns: 38px minmax(0, 1fr) !important;
	}
}
/* Dashboard mobile quest cards and compact summaries cleanup. */
.cbk-dashboard-shell .ck-daily-quests .ck-quest-row {
	grid-template-columns: minmax(0, 1fr) minmax(160px, 1.15fr) auto auto;
}

@media (max-width: 560px) {
	.cbk-dashboard-shell .ck-daily-quests .ck-quest-list {
		align-items: stretch;
		gap: 10px;
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.cbk-dashboard-shell .ck-daily-quests .ck-quest-row {
		display: flex;
		flex-direction: column;
		gap: 9px;
		min-height: 0;
		padding: 10px;
	}

	.cbk-dashboard-shell .ck-daily-quests .cbk-quest-main {
		align-items: flex-start;
		display: flex;
		gap: 7px;
		justify-content: space-between;
	}

	.cbk-dashboard-shell .ck-daily-quests .cbk-quest-title {
		font-size: 12px;
		line-height: 1.15;
		min-width: 0;
	}

	.cbk-dashboard-shell .ck-daily-quests .ck-quest-progress {
		flex: 0 0 auto;
	}

	.cbk-dashboard-shell .ck-daily-quests .cbk-quest-rewards {
		align-items: center;
		min-height: 28px;
	}

	.cbk-dashboard-shell .ck-daily-quests .ck-quest-status,
	.cbk-dashboard-shell .ck-daily-quests .ck-button {
		align-self: stretch;
		justify-content: center;
		width: 100%;
	}

	.cbk-dashboard-shell .ck-daily-quests .ck-button {
		margin-top: auto;
	}

	.cbk-dashboard-shell .cbk-management-grid {
		align-items: start;
	}

	.cbk-dashboard-shell .ck-compact-row {
		align-content: center;
		align-items: center;
		grid-template-columns: 38px minmax(0, 1fr) !important;
		min-height: auto;
		padding: 10px;
	}

	.cbk-dashboard-shell .ck-compact-row > span {
		gap: 2px;
	}
}

/* Inline notices are handled by game popups. */
.ck-message {
	display: none !important;
}

/* Dashboard season and tasks two-column row. */
.cbk-dashboard-shell .cbk-season-quest-row {
	display: grid;
	gap: 16px;
	grid-template-columns: minmax(0, 1fr) minmax(360px, .82fr);
	align-items: stretch;
}

.cbk-dashboard-shell .cbk-season-quest-row > .ck-card {
	min-width: 0;
}

.cbk-dashboard-shell .cbk-season-quest-row .cbk-season-card,
.cbk-dashboard-shell .cbk-season-quest-row .ck-daily-quests {
	height: 100%;
}

.cbk-dashboard-shell .cbk-season-quest-row .ck-daily-quests .ck-quest-list {
	display: grid;
	gap: 10px;
	grid-template-columns: 1fr;
}

@media (max-width: 991px) {
	.cbk-dashboard-shell .cbk-season-quest-row {
		grid-template-columns: 1fr;
	}
}

@media (min-width: 992px) {
	.cbk-dashboard-shell .cbk-season-quest-row .ck-daily-quests .ck-quest-row {
		grid-template-columns: minmax(0, 1fr) auto;
	}

	.cbk-dashboard-shell .cbk-season-quest-row .ck-daily-quests .cbk-quest-rewards,
	.cbk-dashboard-shell .cbk-season-quest-row .ck-daily-quests .ck-quest-status,
	.cbk-dashboard-shell .cbk-season-quest-row .ck-daily-quests .ck-button {
		grid-column: auto;
	}
}
/* Keep dashboard Season and Tasks on the same desktop row. */
.cbk-dashboard-shell .cbk-season-quest-row > .cbk-season-card,
.cbk-dashboard-shell .cbk-season-quest-row > .ck-daily-quests {
	grid-column: auto !important;
}

@media (min-width: 992px) {
	.cbk-dashboard-shell .cbk-season-quest-row {
		grid-template-columns: minmax(0, 1fr) minmax(360px, .82fr) !important;
	}
}
/* Professional dashboard Season + Tasks command row. */
.cbk-dashboard-shell .cbk-season-quest-row {
	align-items: start !important;
	gap: 18px !important;
	grid-template-columns: minmax(0, 1.12fr) minmax(420px, .88fr) !important;
}

.cbk-dashboard-shell .cbk-season-quest-row .cbk-season-card,
.cbk-dashboard-shell .cbk-season-quest-row .ck-daily-quests {
	height: auto !important;
}

.cbk-dashboard-shell .cbk-season-quest-row .cbk-season-card {
	background:
		radial-gradient(circle at 90% 10%, rgba(245, 158, 11, .18), transparent 30%),
		radial-gradient(circle at 8% 95%, rgba(56, 189, 248, .12), transparent 32%),
		linear-gradient(145deg, rgba(20, 31, 49, .98), rgba(11, 18, 31, .98));
	border: 1px solid rgba(245, 158, 11, .38);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, .04), 0 22px 48px rgba(0, 0, 0, .24);
	display: grid;
	gap: 18px;
	min-height: 0;
	padding: 22px;
}

.cbk-dashboard-shell .cbk-season-quest-row .cbk-season-header {
	align-items: center;
	gap: 18px;
	grid-template-columns: minmax(0, 1fr) auto;
}

.cbk-dashboard-shell .cbk-season-quest-row .cbk-season-name {
	font-size: clamp(28px, 3vw, 40px);
	letter-spacing: 0;
	margin: 6px 0 4px;
}

.cbk-dashboard-shell .cbk-season-quest-row .cbk-season-sp {
	border-color: rgba(245, 158, 11, .5);
	box-shadow: 0 18px 34px rgba(245, 158, 11, .1);
	min-width: 128px;
	padding: 14px 16px;
}

.cbk-dashboard-shell .cbk-season-quest-row .cbk-season-sp strong {
	font-size: 44px;
}

.cbk-dashboard-shell .cbk-season-quest-row .cbk-season-stats-grid {
	gap: 10px;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	margin-top: 0;
}

.cbk-dashboard-shell .cbk-season-quest-row .cbk-season-stats-grid > div {
	background: linear-gradient(180deg, rgba(23, 35, 55, .92), rgba(12, 20, 33, .96));
	border-color: rgba(148, 163, 184, .24);
	min-height: 74px;
	padding: 12px;
}

.cbk-dashboard-shell .cbk-season-quest-row .cbk-season-progress {
	margin-top: 0;
}

.cbk-dashboard-shell .cbk-season-quest-row .cbk-season-actions {
	align-items: center;
	display: flex;
	gap: 10px;
	margin-top: 0;
}

.cbk-dashboard-shell .cbk-season-quest-row .cbk-season-actions .ck-button {
	border-radius: 10px;
	flex: 0 0 auto;
	min-height: 44px;
	padding: 11px 16px;
	width: auto;
}

.cbk-dashboard-shell .cbk-season-quest-row .ck-daily-quests {
	background:
		radial-gradient(circle at 100% 0, rgba(56, 189, 248, .12), transparent 32%),
		linear-gradient(145deg, rgba(22, 34, 54, .98), rgba(13, 22, 36, .98));
	border-color: rgba(56, 189, 248, .22);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, .04), 0 18px 40px rgba(0, 0, 0, .18);
	padding: 18px;
}

.cbk-dashboard-shell .cbk-season-quest-row .ck-daily-quests .ck-section-heading {
	margin-bottom: 12px;
}

.cbk-dashboard-shell .cbk-season-quest-row .ck-daily-quests .ck-quest-list {
	display: grid;
	gap: 12px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.cbk-dashboard-shell .cbk-season-quest-row .ck-daily-quests .ck-quest-row {
	align-content: start;
	background: linear-gradient(180deg, rgba(30, 41, 59, .82), rgba(15, 23, 42, .96));
	border: 1px solid rgba(148, 163, 184, .22);
	border-radius: 12px;
	display: grid;
	gap: 10px;
	grid-template-columns: minmax(0, 1fr) auto !important;
	min-height: 150px;
	padding: 12px;
}

.cbk-dashboard-shell .cbk-season-quest-row .ck-daily-quests .cbk-quest-main {
	align-items: start;
	display: grid;
	gap: 8px;
}

.cbk-dashboard-shell .cbk-season-quest-row .ck-daily-quests .cbk-quest-title {
	font-size: 13px;
	line-height: 1.2;
}

.cbk-dashboard-shell .cbk-season-quest-row .ck-daily-quests .ck-quest-progress {
	align-items: center;
	background: rgba(226, 232, 240, .96);
	border-radius: 999px;
	color: #0f172a;
	display: inline-flex;
	font-size: 12px;
	font-weight: 900;
	height: 32px;
	justify-content: center;
	min-width: 40px;
	padding: 0 9px;
}

.cbk-dashboard-shell .cbk-season-quest-row .ck-daily-quests .cbk-quest-rewards {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	grid-column: 1 / -1 !important;
	min-height: 28px;
}

.cbk-dashboard-shell .cbk-season-quest-row .ck-daily-quests .ck-quest-status {
	align-self: end;
	justify-self: start;
	grid-column: 1 / 2 !important;
	padding: 7px 10px;
}

.cbk-dashboard-shell .cbk-season-quest-row .ck-daily-quests .ck-button {
	align-self: end;
	border-radius: 9px;
	grid-column: 2 / 3 !important;
	justify-self: end;
	min-height: 38px;
	min-width: 76px;
	padding: 8px 12px;
}

@media (max-width: 1180px) {
	.cbk-dashboard-shell .cbk-season-quest-row {
		grid-template-columns: 1fr !important;
	}

	.cbk-dashboard-shell .cbk-season-quest-row .ck-daily-quests .ck-quest-list {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 640px) {
	.cbk-dashboard-shell .cbk-season-quest-row .cbk-season-stats-grid,
	.cbk-dashboard-shell .cbk-season-quest-row .ck-daily-quests .ck-quest-list {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}

	.cbk-dashboard-shell .cbk-season-quest-row .cbk-season-header {
		grid-template-columns: 1fr;
	}

	.cbk-dashboard-shell .cbk-season-quest-row .cbk-season-sp {
		justify-self: start;
	}
}
/* Mobile strategy dashboard redesign: single-column season and compact clickable quests. */
.cbk-dashboard-shell .cbk-season-quest-row {
	display: contents !important;
}

.cbk-dashboard-shell .cbk-season-mobile-hero {
	background:
		radial-gradient(circle at 88% 0, rgba(251, 191, 36, .18), transparent 32%),
		radial-gradient(circle at 8% 100%, rgba(56, 189, 248, .14), transparent 34%),
		linear-gradient(145deg, rgba(20, 31, 49, .98), rgba(9, 15, 27, .99));
	border: 1px solid rgba(245, 158, 11, .42);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, .05), 0 24px 55px rgba(0, 0, 0, .28);
	display: grid;
	gap: 16px;
	padding: clamp(16px, 2.2vw, 24px);
}

.cbk-dashboard-shell .cbk-season-mobile-hero .cbk-season-hero-top {
	align-items: center;
	display: grid;
	gap: 16px;
	grid-template-columns: minmax(0, 1fr) auto;
}

.cbk-dashboard-shell .cbk-season-mobile-hero .cbk-season-name {
	font-size: clamp(30px, 4vw, 48px);
	line-height: 1;
	margin: 6px 0 8px;
}

.cbk-dashboard-shell .cbk-season-standing {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 8px 12px;
}

.cbk-dashboard-shell .cbk-season-standing strong {
	color: #fff;
	font-size: clamp(18px, 2.2vw, 24px);
	font-weight: 900;
}

.cbk-dashboard-shell .cbk-season-standing span {
	background: rgba(245, 158, 11, .14);
	border: 1px solid rgba(245, 158, 11, .32);
	border-radius: 999px;
	color: #fde68a;
	font-size: 12px;
	font-weight: 900;
	padding: 7px 10px;
	text-transform: uppercase;
}

.cbk-dashboard-shell .cbk-season-mobile-hero .cbk-season-sp {
	background: linear-gradient(180deg, rgba(30, 41, 59, .8), rgba(15, 23, 42, .98));
	border-color: rgba(245, 158, 11, .44);
	border-radius: 16px;
	min-width: 130px;
	padding: 14px 18px;
}

.cbk-dashboard-shell .cbk-season-mobile-hero .cbk-season-sp strong {
	font-size: 46px;
}

.cbk-dashboard-shell .cbk-season-main-progress {
	background: rgba(15, 23, 42, .62);
	border: 1px solid rgba(148, 163, 184, .18);
	border-radius: 14px;
	padding: 14px;
}

.cbk-dashboard-shell .cbk-season-main-progress .ck-progress-track {
	height: 18px;
}

.cbk-dashboard-shell .cbk-season-main-progress .ck-progress-track span {
	background: linear-gradient(90deg, #facc15, #fb923c, #f97316);
	box-shadow: 0 0 24px rgba(249, 115, 22, .55);
}

.cbk-dashboard-shell .cbk-current-season-rewards {
	background: rgba(15, 23, 42, .5);
	border: 1px solid rgba(56, 189, 248, .18);
	border-radius: 14px;
	padding: 14px;
}

.cbk-dashboard-shell .cbk-season-reward-head {
	align-items: center;
	display: flex;
	justify-content: space-between;
	margin-bottom: 10px;
}

.cbk-dashboard-shell .cbk-season-reward-head span {
	color: #fff;
	font-weight: 900;
}

.cbk-dashboard-shell .cbk-season-reward-head a {
	color: #38bdf8;
	font-size: 12px;
	font-weight: 900;
	text-decoration: none;
}

.cbk-dashboard-shell .cbk-season-reward-grid {
	display: grid;
	gap: 10px;
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.cbk-dashboard-shell .cbk-season-reward-card {
	background: linear-gradient(180deg, rgba(30, 41, 59, .86), rgba(15, 23, 42, .96));
	border: 1px solid rgba(148, 163, 184, .22);
	border-radius: 12px;
	display: grid;
	gap: 5px;
	padding: 11px;
}

.cbk-dashboard-shell .cbk-season-reward-card i {
	align-items: center;
	background: rgba(245, 158, 11, .16);
	border: 1px solid rgba(245, 158, 11, .34);
	border-radius: 999px;
	color: #fde68a;
	display: inline-flex;
	font-size: 11px;
	font-style: normal;
	font-weight: 900;
	height: 28px;
	justify-content: center;
	width: 36px;
}

.cbk-dashboard-shell .cbk-season-reward-card span {
	color: #94a3b8;
	font-size: 10px;
	font-weight: 900;
	letter-spacing: .06em;
	text-transform: uppercase;
}

.cbk-dashboard-shell .cbk-season-reward-card strong {
	color: #fff;
	font-size: 14px;
	line-height: 1.2;
}

.cbk-dashboard-shell .cbk-season-mini-stats {
	grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
}

.cbk-dashboard-shell .cbk-season-mini-stats > div {
	min-height: 58px !important;
	padding: 10px !important;
}

.cbk-dashboard-shell .cbk-season-mini-stats span {
	font-size: 9px !important;
}

.cbk-dashboard-shell .cbk-season-mini-stats strong {
	font-size: 15px !important;
}

.cbk-dashboard-shell .cbk-quest-board {
	background:
		radial-gradient(circle at 100% 0, rgba(56, 189, 248, .12), transparent 28%),
		linear-gradient(145deg, rgba(22, 34, 54, .98), rgba(12, 20, 33, .99));
	border-color: rgba(56, 189, 248, .22);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, .05), 0 18px 44px rgba(0, 0, 0, .2);
	padding: clamp(14px, 2vw, 20px);
}

.cbk-dashboard-shell .cbk-quest-board .ck-quest-list {
	display: grid;
	gap: 10px;
	grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
}

.cbk-dashboard-shell .cbk-quest-card-link {
	background: linear-gradient(180deg, rgba(30, 41, 59, .82), rgba(15, 23, 42, .95));
	border: 1px solid rgba(148, 163, 184, .22);
	border-radius: 12px;
	color: #fff;
	display: grid !important;
	gap: 8px;
	min-height: 92px !important;
	padding: 13px 42px 13px 14px !important;
	position: relative;
	text-decoration: none;
	transition: border-color .16s ease, box-shadow .16s ease, transform .16s ease, background .16s ease;
}

.cbk-dashboard-shell .cbk-quest-card-link:hover,
.cbk-dashboard-shell .cbk-quest-card-link:focus {
	background: linear-gradient(180deg, rgba(37, 52, 77, .94), rgba(18, 29, 48, .98));
	border-color: rgba(56, 189, 248, .48);
	box-shadow: 0 14px 26px rgba(56, 189, 248, .12);
	color: #fff;
	transform: translateY(-2px);
}

.cbk-dashboard-shell .cbk-quest-card-link:active {
	transform: translateY(0) scale(.99);
}

.cbk-dashboard-shell .cbk-quest-card-link .cbk-quest-title {
	color: #fff;
	font-size: 15px;
	line-height: 1.15;
}

.cbk-dashboard-shell .cbk-quest-reward-line {
	align-items: center;
	color: #fbbf24;
	display: flex;
	flex-wrap: wrap;
	font-size: 13px;
	font-weight: 900;
	gap: 7px;
	line-height: 1.25;
}

.cbk-dashboard-shell .cbk-quest-reward-line span + span::before {
	color: rgba(226, 232, 240, .55);
	content: '\2022';
	margin-right: 7px;
}

.cbk-dashboard-shell .cbk-quest-check {
	align-items: center;
	background: rgba(34, 197, 94, .18);
	border: 1px solid rgba(34, 197, 94, .44);
	border-radius: 999px;
	color: #86efac;
	display: inline-flex;
	font-size: 13px;
	font-weight: 900;
	height: 26px;
	justify-content: center;
	position: absolute;
	right: 12px;
	top: 12px;
	width: 26px;
}

.cbk-dashboard-shell .cbk-quest-card-link .ck-quest-progress,
.cbk-dashboard-shell .cbk-quest-card-link .ck-quest-status,
.cbk-dashboard-shell .cbk-quest-card-link .ck-button,
.cbk-dashboard-shell .cbk-quest-card-link .cbk-quest-badge {
	display: none !important;
}

@media (max-width: 760px) {
	.cbk-dashboard-shell .cbk-season-mobile-hero .cbk-season-hero-top,
	.cbk-dashboard-shell .cbk-season-reward-grid,
	.cbk-dashboard-shell .cbk-season-mini-stats {
		grid-template-columns: 1fr 1fr !important;
	}

	.cbk-dashboard-shell .cbk-season-mobile-hero .cbk-season-hero-top > div:first-child {
		grid-column: 1 / -1;
	}

	.cbk-dashboard-shell .cbk-quest-board .ck-quest-list {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 460px) {
	.cbk-dashboard-shell .cbk-season-reward-grid,
	.cbk-dashboard-shell .cbk-season-mini-stats {
		grid-template-columns: 1fr !important;
	}
}
/* Season tier icon settings and frontend tier art. */
.ck-tier-icon-grid {
	display: grid;
	gap: 16px;
	grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
	margin-top: 14px;
}

.ck-tier-icon-field {
	background: #fff;
	border: 1px solid #dcdcde;
	border-radius: 8px;
	display: grid;
	gap: 10px;
	padding: 14px;
}

.ck-tier-icon-preview {
	align-items: center;
	aspect-ratio: 1;
	background: linear-gradient(135deg, #1f2937, #0f172a);
	border: 1px solid rgba(245, 158, 11, .45);
	border-radius: 8px;
	color: #fff;
	display: flex;
	font-size: 30px;
	justify-content: center;
	overflow: hidden;
}

.ck-tier-icon-preview img,
.cbk-tier-image-custom img {
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.ck-tier-icon-name {
	font-weight: 700;
}

.cbk-tier-image-custom {
	align-items: center;
	display: flex;
	overflow: hidden;
}
.ck-tier-icon-field .button {
	justify-self: start;
}
/* Clean contained admin layout for square season tier icons. */
.wp-admin .ck-tier-icon-grid {
	align-items: start;
	display: grid;
	gap: 18px;
	grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
	max-width: 1320px;
}

.wp-admin .ck-tier-icon-field {
	box-sizing: border-box;
	min-width: 0;
	overflow: hidden;
	padding: 14px;
}

.wp-admin .ck-tier-icon-preview {
	aspect-ratio: 1 / 1;
	box-sizing: border-box;
	max-width: 100%;
	width: 100%;
}

.wp-admin .ck-tier-icon-preview img {
	display: block;
	height: 100%;
	object-fit: contain;
	object-position: center;
	width: 100%;
}

.wp-admin .ck-tier-icon-field input.regular-text {
	box-sizing: border-box;
	max-width: 100%;
	width: 100%;
}

.wp-admin .ck-tier-icon-field .button {
	min-height: 36px;
	width: fit-content;
}

@media (min-width: 1200px) {
	.wp-admin .ck-tier-icon-grid {
		grid-template-columns: repeat(7, minmax(0, 1fr));
	}
}
/* Frontend season reward tier icons: square art only, no framed background. */
.cbk-season-page .cbk-reward-tier-card .cbk-tier-image {
	aspect-ratio: 1 / 1 !important;
	background: transparent !important;
	border: 0 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	height: auto !important;
	max-width: 120px;
	overflow: visible !important;
	padding: 0 !important;
	width: 100%;
}

.cbk-season-page .cbk-reward-tier-card .cbk-tier-image img,
.cbk-season-page .cbk-reward-tier-card img.cbk-tier-image {
	aspect-ratio: 1 / 1 !important;
	background: transparent !important;
	border: 0 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	display: block;
	height: auto !important;
	max-width: 120px;
	object-fit: contain !important;
	padding: 0 !important;
	width: 100% !important;

}
/* Mobile cleanup for Season Reward Tiers. */
.cbk-season-page .cbk-reward-tier-card .cbk-tier-image,
.cbk-season-page .cbk-reward-tier-card img.cbk-tier-image {
	align-self: center;
	justify-self: center;
	margin-left: auto;
	margin-right: auto;
}

@media (max-width: 767px) {
	.cbk-season-page .cbk-season-rewards {
		display: block !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
		overflow: hidden;
		padding: 18px !important;
		width: 100% !important;
	}

	.cbk-season-page .cbk-season-rewards .ck-section-heading {
		display: block !important;
		margin-bottom: 16px !important;
		max-width: none !important;
		width: 100% !important;
	}

	.cbk-season-page .cbk-reward-tier-grid {
		display: grid !important;
		gap: 14px !important;
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		margin: 0 !important;
		max-width: none !important;
		padding: 0 !important;
		width: 100% !important;
	}

	.cbk-season-page .cbk-reward-tier-card {
		box-sizing: border-box;
		min-width: 0 !important;
		padding: 14px !important;
		width: 100% !important;
	}

	.cbk-season-page .cbk-reward-tier-card .cbk-tier-image,
	.cbk-season-page .cbk-reward-tier-card img.cbk-tier-image {
		max-width: 92px;
	}

	.cbk-season-page .cbk-reward-tier-card h4 {
		font-size: 15px !important;
		line-height: 1.2 !important;
		margin-top: 10px !important;
	}

	.cbk-season-page .cbk-reward-tier-card > span,
	.cbk-season-page .cbk-reward-tier-card li {
		font-size: 11px !important;
		line-height: 1.35 !important;
	}
}

@media (max-width: 380px) {
	.cbk-season-page .cbk-reward-tier-grid {
		grid-template-columns: 1fr !important;
	}
}
/* Dashboard overview uses the current tier image as the kingdom emblem. */
.cbk-dashboard-shell .cbk-overview-tier-emblem {
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
	padding: 0 !important;
	overflow: visible !important;
}

.cbk-dashboard-shell .cbk-overview-tier-emblem .cbk-tier-image,
.cbk-dashboard-shell .cbk-overview-tier-emblem img.cbk-tier-image {
	aspect-ratio: 1 / 1;
	background: transparent !important;
	border: 0 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	display: block;
	height: 92px !important;
	max-width: none;
	object-fit: contain !important;
	padding: 0 !important;
	width: 92px !important;
}

.cbk-dashboard-shell .cbk-overview-tier-emblem .cbk-tier-image img {
	height: 100%;
	object-fit: contain;
	width: 100%;
}

@media (max-width: 767px) {
	.cbk-dashboard-shell .cbk-overview-tier-emblem .cbk-tier-image,
	.cbk-dashboard-shell .cbk-overview-tier-emblem img.cbk-tier-image {
		height: 72px !important;
		width: 72px !important;
	}
}
/* Season rankings tablet/mobile containment: prevent horizontal page breakage below desktop. */
@media (max-width: 1199px) {
	html,
	body {
		overflow-x: hidden;
	}

	.ck-wrap.cbk-season-rankings.cbk-season-page {
		box-sizing: border-box;
		margin-left: auto !important;
		margin-right: auto !important;
		max-width: calc(100vw - 24px) !important;
		overflow: hidden !important;
		padding: 16px !important;
		width: calc(100vw - 24px) !important;
	}

	.cbk-season-rankings *,
	.cbk-season-rankings *::before,
	.cbk-season-rankings *::after {
		box-sizing: border-box;
		max-width: 100%;
	}

	.cbk-season-rankings .ck-card,
	.cbk-season-rankings > .ck-card,
	.cbk-season-rankings section {
		min-width: 0 !important;
		overflow: hidden;
		width: 100% !important;
	}

	.cbk-season-rankings .cbk-season-hero-banner {
		display: grid !important;
		gap: 18px !important;
		grid-template-columns: 1fr !important;
		padding: 22px !important;
	}

	.cbk-season-rankings .cbk-season-banner-content,
	.cbk-season-rankings .cbk-season-banner-actions,
	.cbk-season-rankings .cbk-season-banner-hero {
		min-width: 0 !important;
		width: 100% !important;
	}

	.cbk-season-rankings .cbk-season-banner-title {
		font-size: clamp(34px, 9vw, 58px) !important;
		letter-spacing: 0 !important;
		line-height: 1 !important;
		max-width: 100% !important;
		overflow-wrap: anywhere;
		white-space: normal !important;
		word-break: normal;
	}

	.cbk-season-rankings .cbk-season-banner-content p {
		font-size: 15px !important;
		max-width: 100% !important;
		overflow-wrap: break-word;
	}

	.cbk-season-rankings .cbk-season-banner-actions,
	.cbk-season-rankings .cbk-season-actions,
	.cbk-season-rankings .cbk-season-tabs {
		display: flex !important;
		flex-wrap: wrap !important;
		gap: 10px !important;
	}

	.cbk-season-rankings .ck-button,
	.cbk-season-rankings .cbk-season-tabs a {
		max-width: 100% !important;
		white-space: normal !important;
	}

	.cbk-season-rankings .cbk-season-hero-placeholder,
	.cbk-season-rankings .cbk-season-banner-hero img {
		height: auto !important;
		margin-left: auto;
		margin-right: auto;
		max-height: 260px !important;
		width: min(100%, 220px) !important;
	}

	.cbk-season-rankings .cbk-season-progress-card,
	.cbk-season-rankings .cbk-season-stat-grid,
	.cbk-season-rankings .cbk-season-summary-grid,
	.cbk-season-rankings .cbk-season-rank-grid {
		display: grid !important;
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}

	.cbk-season-rankings .cbk-reward-tier-grid {
		display: grid !important;
		gap: 14px !important;
		grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
		margin: 0 !important;
		width: 100% !important;
	}

	.cbk-season-rankings .cbk-reward-tier-card {
		min-width: 0 !important;
		padding: 14px !important;
		width: 100% !important;
	}

	.cbk-season-rankings .cbk-reward-tier-card .cbk-tier-image,
	.cbk-season-rankings .cbk-reward-tier-card img.cbk-tier-image {
		display: block;
		margin-left: auto !important;
		margin-right: auto !important;
		max-width: 98px !important;
		width: 72% !important;
	}

	.cbk-season-rankings .cbk-earn-sp-grid,
	.cbk-season-rankings .cbk-challenge-list,
	.cbk-season-rankings .cbk-podium-grid {
		display: grid !important;
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}

	.cbk-season-rankings .cbk-season-table-wrap {
		overflow-x: auto !important;
		-webkit-overflow-scrolling: touch;
	}
}

@media (max-width: 767px) {
	.ck-wrap.cbk-season-rankings.cbk-season-page {
		border-radius: 0 !important;
		max-width: 100vw !important;
		padding: 14px !important;
		width: 100vw !important;
	}

	.cbk-season-rankings .cbk-season-hero-banner {
		padding: 18px !important;
	}

	.cbk-season-rankings .cbk-reward-tier-grid,
	.cbk-season-rankings .cbk-earn-sp-grid,
	.cbk-season-rankings .cbk-challenge-list,
	.cbk-season-rankings .cbk-podium-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}

	.cbk-season-rankings .cbk-season-progress-card,
	.cbk-season-rankings .cbk-season-stat-grid,
	.cbk-season-rankings .cbk-season-summary-grid,
	.cbk-season-rankings .cbk-season-rank-grid {
		grid-template-columns: 1fr !important;
	}
}

@media (max-width: 390px) {
	.cbk-season-rankings .cbk-reward-tier-grid,
	.cbk-season-rankings .cbk-earn-sp-grid,
	.cbk-season-rankings .cbk-challenge-list,
	.cbk-season-rankings .cbk-podium-grid {
		grid-template-columns: 1fr !important;
	}
}
/* Keep key season grids as two columns on mobile. */
@media (max-width: 767px) {
	.cbk-season-rankings .cbk-reward-tier-grid,
	.cbk-season-rankings .cbk-earn-sp-grid,
	.cbk-season-rankings .cbk-challenge-list,
	.cbk-season-page .cbk-reward-tier-grid,
	.cbk-season-page .cbk-earn-sp-grid,
	.cbk-season-page .cbk-challenge-list {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}

	.cbk-season-rankings .cbk-earn-sp-item,
	.cbk-season-rankings .cbk-challenge-item,
	.cbk-season-page .cbk-earn-sp-item,
	.cbk-season-page .cbk-challenge-item {
		min-width: 0 !important;
		padding: 12px !important;
	}
}
/* Season challenges no longer use letter icons. */
.cbk-season-rankings .cbk-challenge-item .cbk-mission-icon,
.cbk-season-page .cbk-challenge-item .cbk-mission-icon {
	display: none !important;
}

.cbk-season-rankings .cbk-challenge-item,
.cbk-season-page .cbk-challenge-item {
	align-content: start;
}
/* Earn Season Points cards no longer show redundant icon/title badges. */
.cbk-season-rankings .cbk-earn-sp-icon,
.cbk-season-page .cbk-earn-sp-icon {
	display: none !important;
}

.cbk-season-rankings .cbk-earn-sp-item,
.cbk-season-page .cbk-earn-sp-item {
	justify-content: center;
}
/* Compact professional layout for How To Earn Season Points. */
.cbk-season-rankings .cbk-earn-sp-section,
.cbk-season-page .cbk-earn-sp-section {
	padding-bottom: 18px !important;
}

.cbk-season-rankings .cbk-earn-sp-grid,
.cbk-season-page .cbk-earn-sp-grid {
	gap: 10px !important;
}

.cbk-season-rankings .cbk-earn-sp-item,
.cbk-season-page .cbk-earn-sp-item {
	align-items: center !important;
	background: linear-gradient(180deg, rgba(30, 41, 59, .72), rgba(15, 23, 42, .94)) !important;
	display: grid !important;
	gap: 8px !important;
	grid-template-columns: minmax(0, 1fr) auto !important;
	justify-content: stretch !important;
	min-height: 0 !important;
	padding: 14px !important;
	text-align: left !important;
}

.cbk-season-rankings .cbk-earn-sp-title,
.cbk-season-page .cbk-earn-sp-title {
	font-size: 13px !important;
	line-height: 1.25 !important;
	min-width: 0;
}

.cbk-season-rankings .cbk-earn-sp-value,
.cbk-season-page .cbk-earn-sp-value {
	align-items: center !important;
	background: linear-gradient(135deg, #fbbf24, #f97316) !important;
	border: 0 !important;
	border-radius: 999px !important;
	box-shadow: 0 8px 18px rgba(249, 115, 22, .22) !important;
	color: #fff !important;
	display: inline-flex !important;
	font-size: 13px !important;
	font-weight: 1000 !important;
	height: auto !important;
	justify-content: center !important;
	line-height: 1 !important;
	min-height: 0 !important;
	padding: 8px 11px !important;
	white-space: nowrap !important;
	width: auto !important;
}

.cbk-season-rankings .cbk-earn-sp-item small,
.cbk-season-page .cbk-earn-sp-item small {
	color: #94a3b8 !important;
	font-size: 11px !important;
	grid-column: 1 / -1;
	line-height: 1.2 !important;
	margin: -2px 0 0 !important;
}

@media (max-width: 767px) {
	.cbk-season-rankings .cbk-earn-sp-item,
	.cbk-season-page .cbk-earn-sp-item {
		align-content: start;
		gap: 7px !important;
		grid-template-columns: 1fr !important;
		padding: 12px !important;
		text-align: center !important;
	}

	.cbk-season-rankings .cbk-earn-sp-value,
	.cbk-season-page .cbk-earn-sp-value {
		justify-self: center;
	}
}
/* Refined alignment for How To Earn Season Points cards. */
.cbk-season-rankings .cbk-earn-sp-item,
.cbk-season-page .cbk-earn-sp-item {
	align-items: center !important;
	column-gap: 12px !important;
	grid-template-columns: minmax(0, 1fr) auto !important;
	grid-template-rows: auto auto !important;
	min-height: 78px !important;
	padding: 14px 16px !important;
	text-align: left !important;
}

.cbk-season-rankings .cbk-earn-sp-title,
.cbk-season-page .cbk-earn-sp-title {
	align-self: end;
	font-size: 14px !important;
	justify-self: start;
	line-height: 1.2 !important;
	margin: 0 !important;
	text-align: left !important;
}

.cbk-season-rankings .cbk-earn-sp-value,
.cbk-season-page .cbk-earn-sp-value {
	align-self: center;
	grid-column: 2;
	grid-row: 1 / 3;
	justify-self: end !important;
	min-width: 58px !important;
	padding: 9px 12px !important;
	text-align: center;
}

.cbk-season-rankings .cbk-earn-sp-item small,
.cbk-season-page .cbk-earn-sp-item small {
	align-self: start;
	grid-column: 1;
	grid-row: 2;
	justify-self: start;
	margin: 4px 0 0 !important;
	text-align: left !important;
}

@media (max-width: 767px) {
	.cbk-season-rankings .cbk-earn-sp-item,
	.cbk-season-page .cbk-earn-sp-item {
		grid-template-columns: minmax(0, 1fr) auto !important;
		min-height: 72px !important;
		padding: 11px 12px !important;
		text-align: left !important;
	}

	.cbk-season-rankings .cbk-earn-sp-title,
	.cbk-season-page .cbk-earn-sp-title {
		font-size: 12px !important;
	}

	.cbk-season-rankings .cbk-earn-sp-value,
	.cbk-season-page .cbk-earn-sp-value {
		font-size: 12px !important;
		justify-self: end !important;
		min-width: 50px !important;
		padding: 8px 9px !important;
	}

	.cbk-season-rankings .cbk-earn-sp-item small,
	.cbk-season-page .cbk-earn-sp-item small {
		font-size: 10px !important;
	}
}
/* Hard mobile reset for season rankings: remove viewport-width gutters and sideways drift. */
@media (max-width: 767px) {
	body:has(.cbk-season-rankings),
	.site:has(.cbk-season-rankings),
	.site-content:has(.cbk-season-rankings),
	.content-area:has(.cbk-season-rankings),
	.entry-content:has(.cbk-season-rankings) {
		overflow-x: hidden !important;
	}

	.entry-content:has(.cbk-season-rankings) {
		margin-left: 0 !important;
		margin-right: 0 !important;
		padding-left: 0 !important;
		padding-right: 0 !important;
	}

	.ck-wrap.cbk-season-rankings.cbk-season-page,
	.cbk-season-rankings.cbk-season-page {
		box-sizing: border-box !important;
		left: auto !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
		max-width: 100% !important;
		min-width: 0 !important;
		overflow-x: hidden !important;
		padding: 12px !important;
		position: relative !important;
		right: auto !important;
		transform: none !important;
		width: 100% !important;
	}

	.cbk-season-rankings .cbk-season-hero-banner {
		margin-left: 0 !important;
		margin-right: 0 !important;
		max-width: 100% !important;
		min-width: 0 !important;
		overflow: hidden !important;
		padding: 18px !important;
		width: 100% !important;
	}

	.cbk-season-rankings .cbk-season-banner-title {
		font-size: clamp(34px, 12vw, 48px) !important;
		max-width: 100% !important;
		overflow-wrap: normal !important;
		word-break: normal !important;
	}

	.cbk-season-rankings .cbk-season-banner-content p {
		display: block !important;
		max-width: 100% !important;
		overflow: hidden !important;
		text-overflow: clip !important;
		white-space: normal !important;
	}

	.cbk-season-rankings .cbk-season-banner-actions,
	.cbk-season-rankings .cbk-season-actions {
		align-items: stretch !important;
		display: grid !important;
		grid-template-columns: 1fr !important;
		width: 100% !important;
	}

	.cbk-season-rankings .ck-button {
		box-sizing: border-box !important;
		justify-content: center !important;
		max-width: 100% !important;
		width: 100% !important;
	}

	.cbk-season-rankings .cbk-season-hero-placeholder,
	.cbk-season-rankings .cbk-season-banner-hero img {
		max-width: min(220px, 74vw) !important;
		width: min(220px, 74vw) !important;
	}
}
/* Top 3 kingdoms: rank order and tier images instead of avatars. */
.cbk-season-rankings .cbk-podium-rank-1,
.cbk-season-page .cbk-podium-rank-1 {
	order: 1 !important;
}

.cbk-season-rankings .cbk-podium-rank-2,
.cbk-season-page .cbk-podium-rank-2 {
	order: 2 !important;
}

.cbk-season-rankings .cbk-podium-rank-3,
.cbk-season-page .cbk-podium-rank-3 {
	order: 3 !important;
}

.cbk-season-rankings .cbk-podium-player .cbk-tier-image,
.cbk-season-page .cbk-podium-player .cbk-tier-image,
.cbk-season-rankings .cbk-podium-player img.cbk-tier-image,
.cbk-season-page .cbk-podium-player img.cbk-tier-image {
	aspect-ratio: 1 / 1 !important;
	background: transparent !important;
	border: 0 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	display: block;
	height: 74px !important;
	margin: 0 auto 10px !important;
	object-fit: contain !important;
	padding: 0 !important;
	width: 74px !important;
}

.cbk-season-rankings .cbk-podium-player .cbk-tier-image img,
.cbk-season-page .cbk-podium-player .cbk-tier-image img {
	height: 100%;
	object-fit: contain;
	width: 100%;
}

.cbk-season-rankings .cbk-podium-rank-1 .cbk-tier-image,
.cbk-season-page .cbk-podium-rank-1 .cbk-tier-image,
.cbk-season-rankings .cbk-podium-rank-1 img.cbk-tier-image,
.cbk-season-page .cbk-podium-rank-1 img.cbk-tier-image {
	height: 86px !important;
	width: 86px !important;
}
/* Dashboard building/unit compact cards use catalog images instead of letter badges. */
.cbk-dashboard-shell .ck-compact-row .cbk-card-image-icon {
	background: transparent !important;
	border: 0 !important;
	border-radius: 8px !important;
	box-shadow: none !important;
	height: 46px !important;
	overflow: hidden;
	padding: 0 !important;
	width: 46px !important;
}

.cbk-dashboard-shell .ck-compact-row .cbk-card-image-icon img {
	display: block;
	height: 100% !important;
	object-fit: cover !important;
	width: 100% !important;
}

@media (max-width: 767px) {
	.cbk-dashboard-shell .ck-compact-row .cbk-card-image-icon {
		height: 40px !important;
		width: 40px !important;
	}
}
/* Circular bordered image badges for dashboard building and unit icons. */
.cbk-dashboard-shell .ck-compact-row .cbk-card-image-icon {
	align-items: center !important;
	background: rgba(14, 116, 144, .18) !important;
	border: 1px solid rgba(14, 165, 233, .42) !important;
	border-radius: 999px !important;
	box-shadow: inset 0 1px 0 rgba(255,255,255,.05), 0 0 18px rgba(14, 165, 233, .08) !important;
	display: inline-flex !important;
	height: 48px !important;
	justify-content: center !important;
	overflow: hidden !important;
	padding: 3px !important;
	width: 48px !important;
}

.cbk-dashboard-shell .ck-compact-row .cbk-card-image-icon img {
	border-radius: 999px !important;
	display: block;
	height: 100% !important;
	object-fit: cover !important;
	width: 100% !important;
}

@media (max-width: 767px) {
	.cbk-dashboard-shell .ck-compact-row .cbk-card-image-icon {
		height: 42px !important;
		width: 42px !important;
	}
}
/* Dashboard mobile: keep Season and Tasks as separate full-width rows. */
@media (max-width: 767px) {
	.cbk-dashboard-shell .cbk-season-quest-row {
		display: grid !important;
		gap: 16px !important;
		grid-template-columns: 1fr !important;
		width: 100% !important;
	}

	.cbk-dashboard-shell .cbk-season-quest-row > .cbk-season-card,
	.cbk-dashboard-shell .cbk-season-quest-row > .ck-daily-quests {
		grid-column: 1 / -1 !important;
		min-width: 0 !important;
		width: 100% !important;
	}
}

/* Dashboard Season/Tasks final layout: desktop side-by-side, mobile stacked rows. */
.cbk-dashboard-shell .cbk-season-quest-row {
	display: grid !important;
	gap: 20px !important;
	grid-template-columns: minmax(0, 1fr) minmax(420px, .95fr) !important;
	align-items: start !important;
	width: 100% !important;
}

.cbk-dashboard-shell .cbk-season-quest-row > .cbk-season-card,
.cbk-dashboard-shell .cbk-season-quest-row > .ck-daily-quests {
	grid-column: auto !important;
	min-width: 0 !important;
	width: 100% !important;
}

@media (max-width: 767px) {
	.cbk-dashboard-shell .cbk-season-quest-row {
		gap: 16px !important;
		grid-template-columns: 1fr !important;
	}

	.cbk-dashboard-shell .cbk-season-quest-row > .cbk-season-card,
	.cbk-dashboard-shell .cbk-season-quest-row > .ck-daily-quests {
		grid-column: 1 / -1 !important;
	}
}

/* Dashboard TASKS list: one quest per row inside the desktop side panel. */
.cbk-dashboard-shell .cbk-season-quest-row .ck-daily-quests .ck-quest-list {
	grid-template-columns: 1fr !important;
}

.cbk-dashboard-shell .cbk-season-quest-row .ck-daily-quests .ck-quest-row {
	min-height: 0 !important;
}

/* Dashboard Daily Quests: compact one-row clickable items. */
.cbk-dashboard-shell .cbk-season-quest-row .ck-daily-quests .ck-quest-row.cbk-quest-clickable {
	align-items: center !important;
	cursor: pointer !important;
	display: grid !important;
	gap: 12px !important;
	grid-template-columns: minmax(150px, 1fr) auto auto !important;
	min-height: 0 !important;
	padding: 12px 14px !important;
	transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease, background .18s ease;
}

.cbk-dashboard-shell .cbk-season-quest-row .ck-daily-quests .ck-quest-row.cbk-quest-clickable:hover,
.cbk-dashboard-shell .cbk-season-quest-row .ck-daily-quests .ck-quest-row.cbk-quest-clickable:focus-visible {
	background: linear-gradient(180deg, rgba(35, 49, 75, .92), rgba(18, 29, 48, .98)) !important;
	border-color: rgba(56, 189, 248, .48) !important;
	box-shadow: 0 0 0 1px rgba(56, 189, 248, .14), 0 12px 28px rgba(0, 0, 0, .22) !important;
	outline: none !important;
	transform: translateY(-1px);
}

.cbk-dashboard-shell .cbk-season-quest-row .ck-daily-quests .ck-quest-row.cbk-quest-clickable:active {
	transform: translateY(0);
}

.cbk-dashboard-shell .cbk-season-quest-row .ck-daily-quests .ck-quest-row.cbk-quest-clickable .cbk-quest-main,
.cbk-dashboard-shell .cbk-season-quest-row .ck-daily-quests .ck-quest-row.cbk-quest-clickable .cbk-quest-rewards,
.cbk-dashboard-shell .cbk-season-quest-row .ck-daily-quests .ck-quest-row.cbk-quest-clickable .ck-quest-status {
	grid-column: auto !important;
	margin: 0 !important;
}

.cbk-dashboard-shell .cbk-season-quest-row .ck-daily-quests .ck-quest-row.cbk-quest-clickable .cbk-quest-title {
	font-size: 14px !important;
	line-height: 1.2 !important;
}

.cbk-dashboard-shell .cbk-season-quest-row .ck-daily-quests .ck-quest-row.cbk-quest-clickable .cbk-quest-rewards {
	justify-content: flex-start !important;
	min-height: 0 !important;
}

.cbk-dashboard-shell .cbk-season-quest-row .ck-daily-quests .ck-quest-row.cbk-quest-clickable .ck-quest-status {
	justify-self: end !important;
	white-space: nowrap !important;
}

@media (max-width: 520px) {
	.cbk-dashboard-shell .cbk-season-quest-row .ck-daily-quests .ck-quest-row.cbk-quest-clickable {
		grid-template-columns: minmax(0, 1fr) auto !important;
	}

	.cbk-dashboard-shell .cbk-season-quest-row .ck-daily-quests .ck-quest-row.cbk-quest-clickable .cbk-quest-rewards {
		grid-column: 1 / 2 !important;
	}

	.cbk-dashboard-shell .cbk-season-quest-row .ck-daily-quests .ck-quest-row.cbk-quest-clickable .ck-quest-status {
		grid-column: 2 / 3 !important;
		grid-row: 1 / 3 !important;
	}
}

/* Daily Quest compact row visibility guard. */
.cbk-dashboard-shell .cbk-season-quest-row .ck-daily-quests .ck-quest-row.cbk-quest-clickable .cbk-quest-main {
	display: block !important;
}

.cbk-dashboard-shell .cbk-season-quest-row .ck-daily-quests .ck-quest-row.cbk-quest-clickable .cbk-quest-rewards {
	display: flex !important;
}

.cbk-dashboard-shell .cbk-season-quest-row .ck-daily-quests .ck-quest-row.cbk-quest-clickable .ck-quest-status {
	display: inline-flex !important;
}

/* Daily Quest rewards alignment: keep multi-reward rows on one clean line. */
.cbk-dashboard-shell .cbk-season-quest-row .ck-daily-quests .ck-quest-row.cbk-quest-clickable {
	grid-template-columns: minmax(130px, 1fr) max-content auto !important;
}

.cbk-dashboard-shell .cbk-season-quest-row .ck-daily-quests .ck-quest-row.cbk-quest-clickable .cbk-quest-rewards {
	align-items: center !important;
	flex-wrap: nowrap !important;
	gap: 6px !important;
	justify-self: end !important;
	white-space: nowrap !important;
}

.cbk-dashboard-shell .cbk-season-quest-row .ck-daily-quests .ck-quest-row.cbk-quest-clickable .cbk-reward-icon {
	flex: 0 0 auto !important;
}

/* Kingdom Creation Page - PC Game Style */
.ck-create-page {
	gap: 0;
	padding: 14px 20px 20px;
	position: relative;
	background:
		url('https://cardberus.com/wp-content/uploads/cardberuskingdom/cardberuskingdoms2.jpg');

	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
}

.ck-create-page .ck-hero {
	position: relative;
		min-height: 85vh;

		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;

		padding: 40px;
		background: none;
}

.ck-create-page .ck-hero h2 {
	font-size: clamp(26px, 3vw, 40px);
	line-height: 1.05;
	margin: 0 0 10px;
	color: #fff;
	text-shadow: 0 3px 14px rgba(0,0,0,.55);
	position: relative;
		z-index: 2;
}

.ck-create-page .ck-hero p {
	color: rgba(255,255,255,.9);
	font-size: 14px;
}

/* Smaller dark form card */
.ck-create-page .ck-create-card {
	position: absolute;
		left: 50%;
		top: 50%;

		transform: translate(-50%, -50%);
		margin: 0;

		width: 420px;
		z-index: 5;
	max-width: 430px;
	padding: 22px 26px 24px;
	gap: 14px;
	background: linear-gradient(180deg, rgba(14, 21, 35, .94), rgba(6, 10, 18, .96));
	border: 1px solid rgba(244, 193, 93, .32);
	border-radius: 18px;
	box-shadow:
		0 18px 45px rgba(0,0,0,.42),
		inset 0 1px 0 rgba(255,255,255,.08);
	backdrop-filter: blur(10px);
}

.ck-create-page .ck-create-card h3 {
	color: #f8fafc;
	font-size: 20px;
	margin-bottom: 4px;
	text-shadow: 0 2px 10px rgba(0,0,0,.45);
}

.ck-create-page .ck-create-fields {
	gap: 10px;
	grid-template-columns: 1fr 145px;
	max-width: 380px;
}

.ck-create-page .ck-create-fields input,
.ck-create-page .ck-create-fields select {
	min-height: 40px;
	border-radius: 9px;
	background: rgba(255,255,255,.92);
	border: 1px solid rgba(148, 163, 184, .55);
	font-size: 13px;
}

.ck-create-page .ck-create-card .ck-button {
	min-height: 40px;
	padding: 0 24px;
	font-size: 12px;
	border-radius: 999px;
	background: linear-gradient(135deg, #f4c15d, #f97316);
	color: #111827;
	box-shadow: 0 10px 24px rgba(249, 115, 22, .28);
}

/* Remove bottom empty space from background section */
.ck-create-page::after {
	content: "";
	display: block;
	clear: both;
}

@media (max-width: 640px) {
	.ck-create-page {
		gap: 0;
		position: relative;
		padding: 10px;
		background-size: cover;
		background-repeat: no-repeat;
		background-position: center top;
		background:
		url('https://cardberus.com/wp-content/uploads/cardberuskingdom/cardberus_kingdoms.jpg');
	}

	.ck-create-page .ck-hero {
		min-height: 620px !important;
		padding: 20px 12px !important;
		
	}

	.ck-create-page .ck-create-card {
		margin-top: -54px;
		max-width: 100%;
		padding: 20px;
	}

	.ck-create-page .ck-create-fields {
		grid-template-columns: 1fr;
	}
}


@media (max-width: 520px) {
	.ck-create-card {
	margin-top: -48px;
	padding: 22px;
}

.ck-hero {
	padding: 30px 22px 70px;
}


	.cbk-dashboard-shell .cbk-season-quest-row .ck-daily-quests .ck-quest-row.cbk-quest-clickable {
		gap: 8px !important;
		grid-template-columns: minmax(112px, 1fr) max-content auto !important;
		padding: 12px !important;
	}

	.cbk-dashboard-shell .cbk-season-quest-row .ck-daily-quests .ck-quest-row.cbk-quest-clickable .cbk-quest-rewards,
	.cbk-dashboard-shell .cbk-season-quest-row .ck-daily-quests .ck-quest-row.cbk-quest-clickable .ck-quest-status {
		grid-column: auto !important;
		grid-row: auto !important;
	}

	.cbk-dashboard-shell .cbk-season-quest-row .ck-daily-quests .ck-quest-row.cbk-quest-clickable .cbk-reward-icon {
		font-size: 11px !important;
		padding: 4px 7px !important;
	}
}

/* Recruit Units page: match World Store unit card controls and wording. */
.cbk-train-page .cbk-store-hero h2,
.cbk-train-page .cbk-section-head h3 {
	letter-spacing: 0 !important;
}

.cbk-train-page .cbk-product-grid {
	align-items: stretch !important;
	grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
}

.cbk-train-page .cbk-product-card {
	background: linear-gradient(180deg, rgba(23, 35, 55, .94), rgba(15, 23, 42, .98)) !important;
	border-color: rgba(148, 163, 184, .28) !important;
	box-shadow: 0 16px 34px rgba(2, 6, 23, .24) !important;
}

.cbk-train-page .cbk-product-body {
	display: grid !important;
	gap: 9px !important;
	grid-template-rows: auto auto auto auto auto auto 1fr !important;
}

.cbk-train-page .cbk-train-form {
	align-self: end !important;
	display: grid !important;
	gap: 9px !important;
	grid-template-columns: 1fr !important;
	margin-top: auto !important;
}

.cbk-train-page .cbk-qty-control,
.cbk-train-page .cbk-qty-quick,
.cbk-train-page .cbk-total-cost,
.cbk-train-page .cbk-train-form .ck-button {
	width: 100% !important;
}

.cbk-train-page .cbk-train-form .ck-button.ck-buy-hero-button {
	background: linear-gradient(135deg, #fbbf24, #f97316) !important;
	border: 0 !important;
	box-shadow: 0 14px 30px rgba(249, 115, 22, .24) !important;
	color: #fff !important;
}

.cbk-train-page .cbk-price {
	color: #fde68a !important;
	font-size: 16px !important;
	font-weight: 1000 !important;
}

@media (max-width: 1100px) {
	.cbk-train-page .cbk-product-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	}
}

@media (max-width: 860px) {
	.cbk-train-page .cbk-product-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}
}

@media (max-width: 560px) {
	.cbk-train-page .cbk-product-grid {
		grid-template-columns: 1fr !important;
	}
}

/* Resource cost pills for Recruit Units, Buildings, and World Store. */
.cbk-resource-cost-line {
	display: grid;
	gap: 7px;
}

.cbk-resource-cost-line > span:first-child,
.cbk-upgrade-cost > span:first-child {
	color: #cbd5e1;
	font-size: 12px;
	font-weight: 800;
	letter-spacing: 0;
	text-transform: none;
}

.cbk-resource-badges {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
}

.cbk-resource-badges .cbk-reward-icon,
.cbk-upgrade-cost .cbk-reward-icon {
	background: rgba(15, 23, 42, .7) !important;
	border-color: rgba(148, 163, 184, .26) !important;
	color: #e5edf8 !important;
}

.cbk-reward-food i {
	background: #16a34a !important;
}

.cbk-reward-iron i {
	background: #0e7490 !important;
}

.cbk-reward-mana i {
	background: #7c3aed !important;
}

.cbk-reward-auction_tokens i {
	background: #f59e0b !important;
}

/* RPG hero collection page */
.cbk-heroes-command-page {
	--hero-bg: #07111f;
	--hero-panel: rgba(15, 23, 42, .92);
	--hero-panel-2: rgba(30, 41, 59, .72);
	--hero-line: rgba(148, 163, 184, .22);
	--hero-gold: #f6c453;
	--hero-bronze: #a16207;
	--hero-text: #f8fafc;
	--hero-muted: #9fb0c6;
	background:
		radial-gradient(circle at 18% 0%, rgba(14, 165, 233, .16), transparent 34%),
		radial-gradient(circle at 88% 8%, rgba(245, 158, 11, .16), transparent 34%),
		linear-gradient(135deg, #061523, #0b1020 58%, #151006);
	border: 1px solid rgba(245, 158, 11, .28);
	border-radius: 12px;
	box-shadow: 0 26px 70px rgba(2, 6, 23, .36);
	color: var(--hero-text);
	display: grid;
	gap: 18px;
	margin: 0 auto;
	max-width: 1400px;
	padding: 18px;
}

.cbk-heroes-command-page .ck-kingdom-back-link {
	justify-self: start;
}

.cbk-hero-command-center,
.cbk-champion-showcase,
.cbk-heroes-command-page .cbk-heroes-roster-panel {
	background: linear-gradient(180deg, rgba(15, 23, 42, .88), rgba(8, 17, 31, .92));
	border: 1px solid var(--hero-line);
	border-radius: 14px;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, .04), 0 18px 36px rgba(2, 6, 23, .2);
}

.cbk-hero-command-center {
	display: grid;
	gap: 16px;
	grid-template-columns: minmax(260px, .9fr) minmax(0, 1.6fr);
	padding: 18px;
}

.cbk-hero-command-kicker {
	color: var(--hero-gold);
	display: block;
	font-size: 11px;
	font-weight: 900;
	letter-spacing: .09em;
	text-transform: uppercase;
}

.cbk-hero-command-copy h2,
.cbk-hero-roster-toolbar h3,
.cbk-champion-copy h3 {
	color: var(--hero-text);
	line-height: 1;
	margin: 5px 0 8px;
}

.cbk-hero-command-copy h2 {
	font-size: clamp(34px, 4vw, 58px);
}

.cbk-hero-command-copy p,
.cbk-champion-copy p {
	color: #cbd5e1;
	margin: 0;
}

.cbk-hero-command-stats {
	display: grid;
	gap: 10px;
	grid-template-columns: repeat(5, minmax(0, 1fr));
}

.cbk-hero-command-stats > div,
.cbk-roster-currency,
.cbk-hero-sort-select,
.cbk-champion-power {
	background: rgba(8, 17, 31, .65);
	border: 1px solid rgba(148, 163, 184, .16);
	border-radius: 10px;
	padding: 10px;
}

.cbk-hero-command-stats span,
.cbk-roster-currency span,
.cbk-hero-sort-select span,
.cbk-champion-power span {
	color: var(--hero-muted);
	display: block;
	font-size: 10px;
	font-weight: 900;
	letter-spacing: .04em;
	text-transform: uppercase;
}

.cbk-hero-command-stats strong,
.cbk-champion-power strong {
	color: var(--hero-text);
	display: block;
	font-size: 17px;
	line-height: 1.15;
	margin-top: 4px;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.cbk-champion-showcase {
	align-items: center;
	display: grid;
	gap: 18px;
	grid-template-columns: 210px minmax(0, 1fr);
	overflow: hidden;
	padding: 18px;
	position: relative;
}

.cbk-champion-showcase::before {
	background: radial-gradient(circle, rgba(246, 196, 83, .24), transparent 62%);
	content: "";
	inset: -45% auto auto -10%;
	height: 360px;
	position: absolute;
	width: 360px;
}

.cbk-champion-portrait,
.cbk-rpg-card-portrait,
.cbk-hero-details-portrait {
	background: linear-gradient(145deg, rgba(30, 41, 59, .78), rgba(8, 17, 31, .92));
	border: 1px solid rgba(246, 196, 83, .28);
	box-shadow: inset 0 0 24px rgba(14, 165, 233, .1), 0 16px 34px rgba(2, 6, 23, .32);
	overflow: hidden;
}

.cbk-champion-portrait {
	aspect-ratio: 3 / 4;
	border-radius: 14px;
	position: relative;
	z-index: 1;
}

.cbk-champion-image,
.cbk-rpg-hero-portrait,
.cbk-hero-details-portrait img {
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.cbk-rpg-hero-avatar {
	align-items: center;
	color: #f8fafc;
	display: flex;
	font-size: 34px;
	font-weight: 900;
	justify-content: center;
}

.cbk-champion-copy {
	position: relative;
	z-index: 1;
}

.cbk-champion-copy h3 {
	font-size: clamp(28px, 3vw, 46px);
}

.cbk-champion-meta {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin: 0 0 10px;
}

.cbk-champion-meta > span {
	background: rgba(15, 23, 42, .76);
	border: 1px solid rgba(148, 163, 184, .18);
	border-radius: 999px;
	color: #dbeafe;
	font-size: 12px;
	font-weight: 900;
	padding: 7px 10px;
}

.cbk-champion-power {
	display: inline-block;
	margin-top: 14px;
	min-width: 180px;
}

.cbk-champion-power strong {
	color: #67e8f9;
	font-size: 28px;
}

.cbk-champion-showcase-grid {
	display: grid;
	gap: 10px;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	margin-top: 16px;
}

.cbk-champion-showcase-grid > div {
	background: rgba(8, 17, 31, .58);
	border: 1px solid rgba(148, 163, 184, .18);
	border-radius: 12px;
	padding: 11px;
}

.cbk-champion-showcase-grid span {
	color: var(--hero-muted);
	display: block;
	font-size: 11px;
	font-weight: 900;
	text-transform: uppercase;
}

.cbk-champion-showcase-grid strong {
	color: #f8fafc;
	display: block;
	font-size: 18px;
	margin-top: 3px;
}

.cbk-champion-showcase-grid .cbk-champion-power {
	display: block;
	margin-top: 0;
	min-width: 0;
}

.cbk-heroes-command-page .cbk-heroes-roster-panel {
	display: grid;
	gap: 14px;
	padding: 16px;
}

.cbk-hero-roster-toolbar {
	align-items: center;
	display: flex;
	gap: 12px;
	justify-content: space-between;
}

.cbk-roster-currency {
	align-items: center;
	display: grid;
	gap: 4px 10px;
	grid-template-columns: auto auto auto auto;
}

.cbk-roster-currency strong {
	color: var(--hero-gold);
}

.cbk-hero-filters {
	align-items: center;
	display: grid;
	gap: 12px;
	grid-template-columns: minmax(0, 1fr) 210px;
}

.cbk-hero-class-tabs {
	background: rgba(8, 17, 31, .48);
	border: 1px solid rgba(148, 163, 184, .18);
	border-radius: 12px;
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	padding: 6px;
}

.cbk-hero-class-tabs a {
	background: rgba(15, 30, 52, .74);
	border: 1px solid rgba(148, 163, 184, .18);
	border-radius: 8px;
	color: #dbeafe;
	font-size: 13px;
	font-weight: 900;
	padding: 9px 12px;
	text-decoration: none;
}

.cbk-hero-class-tabs a.is-active {
	background: linear-gradient(180deg, rgba(30, 41, 59, .95), rgba(15, 23, 42, .95));
	border-color: rgba(246, 196, 83, .66);
	box-shadow: 0 0 18px rgba(246, 196, 83, .12);
	color: #fde68a;
}

.cbk-hero-sort-select {
	display: grid;
	gap: 5px;
}

.cbk-hero-sort-select select {
	background: rgba(15, 23, 42, .94);
	border: 1px solid rgba(246, 196, 83, .3);
	border-radius: 8px;
	color: #f8fafc;
	font-weight: 800;
	min-height: 36px;
	padding: 0 10px;
	width: 100%;
}

.cbk-rpg-hero-grid {
	display: grid;
	gap: 14px;
	grid-template-columns: repeat(5, minmax(0, 1fr));
}

.cbk-rpg-hero-card {
	aspect-ratio: auto;
	background: linear-gradient(180deg, rgba(23, 35, 55, .94), rgba(8, 17, 31, .98));
	border-color: rgba(246, 196, 83, .28);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, .04), 0 16px 34px rgba(2, 6, 23, .28);
	display: grid;
	grid-template-rows: auto auto 1fr;
	min-height: 0;
}

.cbk-rpg-hero-card:hover {
	border-color: rgba(246, 196, 83, .58);
	box-shadow: 0 20px 42px rgba(2, 6, 23, .34), 0 0 24px rgba(14, 165, 233, .12);
	transform: translateY(-3px) scale(1.015);
}

.cbk-hero-card-open {
	background: transparent;
	border: 0;
	color: inherit;
	cursor: pointer;
	display: block;
	padding: 0;
	text-align: left;
}

.cbk-rpg-hero-card .cbk-product-media {
	aspect-ratio: 3 / 4;
	background: #07111f !important;
	border: 1px solid rgba(56, 189, 248, .48);
	border-radius: 10px !important;
	box-shadow: inset 0 0 0 1px rgba(246, 196, 83, .08);
	display: block;
	overflow: hidden;
	padding: 0 !important;
	width: 100%;
}

.cbk-heroes-command-page .cbk-rpg-hero-card .cbk-product-media img,
.cbk-heroes-command-page .cbk-rpg-hero-card .cbk-product-media .ck-hero-image {
	background: #07111f !important;
	border-radius: 9px !important;
	display: block;
	height: 108% !important;
	max-height: none !important;
	object-fit: cover !important;
	object-position: center center !important;
	transform: scale(1.04);
	transform-origin: center center;
	width: 100% !important;
}

.cbk-rpg-hero-card .cbk-product-body {
	display: grid;
	gap: 8px;
	align-content: start;
}

.cbk-rpg-hero-card .cbk-product-body .cbk-power-line,
.cbk-rpg-hero-card .cbk-product-body .cbk-stat-grid,
.cbk-rpg-hero-card .cbk-product-body .cbk-skill-preview {
	width: 100%;
}

.cbk-rpg-hero-card .cbk-product-title-row strong {
	color: #f8fafc;
	font-size: 17px;
	line-height: 1.1;
}

.cbk-rpg-hero-card .cbk-product-title-row em,
.cbk-rpg-hero-card .cbk-product-meta em {
	background: rgba(15, 23, 42, .72);
	border: 1px solid rgba(148, 163, 184, .18);
	border-radius: 999px;
	color: #dbeafe;
	font-size: 11px;
	font-style: normal;
	font-weight: 900;
	padding: 6px 8px;
}

.cbk-rpg-hero-card .cbk-stat-grid em {
	background: rgba(30, 41, 59, .78);
	border: 1px solid rgba(148, 163, 184, .24);
	border-radius: 8px;
	color: #e5edf8;
	font-size: 12px;
	font-style: normal;
	font-weight: 800;
	padding: 7px;
}

.cbk-rpg-hero-card .cbk-product-footer {
	display: grid;
	gap: 8px;
	grid-template-columns: 1fr;
	margin-top: 2px;
	width: 100%;
}

.cbk-rpg-hero-card .cbk-product-footer .ck-button {
	align-items: center;
	display: inline-flex;
	justify-content: center;
	min-height: 42px;
	text-align: center;
	width: 100%;
}

.cbk-heroes-command-page .cbk-rpg-hero-card .ck-button.ck-secondary,
.cbk-heroes-command-page .cbk-rpg-hero-card button.ck-secondary,
.cbk-heroes-command-page .cbk-rpg-hero-card .ck-button.ck-secondary[disabled],
.cbk-heroes-command-page .cbk-rpg-hero-card button.ck-secondary[disabled],
.cbk-heroes-command-page .cbk-rpg-hero-card .cbk-hero-max-badge {
	background: rgba(15, 23, 42, .86) !important;
	border: 1px solid rgba(148, 163, 184, .34) !important;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, .04) !important;
	color: #e2e8f0 !important;
	opacity: 1 !important;
}

.cbk-unrecruited-hero-card {
	color: inherit;
	filter: grayscale(1);
	grid-template-rows: auto auto;
	opacity: .68;
	text-decoration: none;
}

.cbk-unrecruited-hero-card .cbk-product-body {
	align-content: start;
	display: grid;
	gap: 8px;
	margin-top: 0;
}

.cbk-unrecruited-hero-card:hover {
	filter: grayscale(.85);
	opacity: .9;
}

.cbk-unrecruited-hero-card .cbk-product-media,
.cbk-unrecruited-hero-card .cbk-product-body > :not(.cbk-product-footer) {
	opacity: .78;
}

.cbk-unrecruited-hero-card .ck-button {
	background: rgba(15, 23, 42, .82) !important;
	border: 1px solid rgba(148, 163, 184, .3) !important;
	box-shadow: none !important;
	color: #e2e8f0 !important;
	width: 100%;
}

.cbk-unrecruited-hero-card .cbk-product-footer {
	display: grid;
	grid-template-columns: 1fr;
	width: 100%;
}

.cbk-rpg-card-main {
	background: transparent;
	border: 0;
	color: inherit;
	cursor: pointer;
	display: grid;
	grid-template-rows: minmax(0, 1fr) auto;
	min-height: 0;
	padding: 0;
	text-align: left;
}

.cbk-rpg-stars {
	background: rgba(8, 17, 31, .72);
	border: 1px solid rgba(246, 196, 83, .18);
	border-radius: 999px;
	left: 8px;
	padding: 4px 7px;
	position: absolute;
	top: 8px;
	z-index: 2;
}

.cbk-rpg-stars .ck-star-rating {
	font-size: 11px;
}

.cbk-rpg-card-portrait {
	border: 0;
	border-radius: 0;
	min-height: 0;
}

.cbk-rpg-card-body {
	display: grid;
	gap: 7px;
	padding: 10px;
}

.cbk-rpg-card-body strong {
	color: var(--hero-text);
	font-size: 15px;
	line-height: 1.1;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.cbk-rpg-card-meta {
	display: flex;
	gap: 6px;
	justify-content: space-between;
}

.cbk-rpg-card-meta em {
	background: rgba(8, 17, 31, .58);
	border: 1px solid rgba(148, 163, 184, .14);
	border-radius: 999px;
	color: #cbd5e1;
	font-size: 10px;
	font-style: normal;
	font-weight: 900;
	min-width: 0;
	padding: 5px 7px;
}

.cbk-rpg-power-bar {
	background: rgba(8, 17, 31, .76);
	border-radius: 999px;
	height: 6px;
	overflow: hidden;
}

.cbk-rpg-power-bar i {
	background: linear-gradient(90deg, #0ea5e9, #f6c453);
	border-radius: inherit;
	display: block;
	height: 100%;
}

.cbk-rpg-card-actions {
	border-top: 1px solid rgba(148, 163, 184, .14);
	display: grid;
	gap: 6px;
	grid-template-columns: repeat(4, 1fr);
	padding: 8px;
}

.cbk-rpg-card-actions button {
	align-items: center;
	background: rgba(15, 23, 42, .84);
	border: 1px solid rgba(148, 163, 184, .18);
	border-radius: 8px;
	color: #f8fafc;
	cursor: pointer;
	display: inline-flex;
	font-size: 12px;
	font-weight: 900;
	height: 30px;
	justify-content: center;
	padding: 0;
}

.cbk-rpg-card-actions button:hover:not(:disabled) {
	border-color: rgba(246, 196, 83, .58);
	color: #fde68a;
}

.cbk-rpg-card-actions button:disabled {
	cursor: default;
	opacity: .42;
}

.cbk-rpg-locked-card {
	align-content: center;
	justify-items: center;
	padding: 14px;
	text-align: center;
	text-decoration: none;
}

.cbk-rpg-locked-silhouette {
	align-items: center;
	background: linear-gradient(180deg, rgba(30, 41, 59, .7), rgba(8, 17, 31, .86));
	border: 1px dashed rgba(148, 163, 184, .3);
	border-radius: 999px;
	color: rgba(203, 213, 225, .42);
	display: flex;
	font-size: 48px;
	font-weight: 900;
	height: 96px;
	justify-content: center;
	margin-bottom: 12px;
	width: 96px;
}

.cbk-rpg-locked-card strong {
	color: #e2e8f0;
}

.cbk-rpg-locked-card small {
	color: var(--hero-muted);
	margin-top: 6px;
}

.cbk-hero-details-modal {
	align-items: center;
	background: rgba(2, 6, 23, .78);
	display: none;
	inset: 0;
	justify-content: center;
	padding: 18px;
	position: fixed;
	z-index: 99999;
}

.cbk-hero-details-modal.is-open {
	display: flex;
}

body.cbk-hero-details-open {
	overflow: hidden;
}

.cbk-hero-details-dialog {
	background:
		radial-gradient(circle at 18% 0%, rgba(14, 165, 233, .16), transparent 32%),
		linear-gradient(135deg, #0f172a, #070d18);
	border: 1px solid rgba(246, 196, 83, .36);
	border-radius: 16px;
	box-shadow: 0 30px 80px rgba(0, 0, 0, .48);
	display: grid;
	gap: 18px;
	grid-template-columns: minmax(220px, 340px) minmax(0, 520px);
	max-width: 920px;
	padding: 18px;
	position: relative;
	width: min(94vw, 920px);
}

.cbk-hero-details-close {
	align-items: center;
	background: rgba(15, 23, 42, .86);
	border: 1px solid rgba(148, 163, 184, .22);
	border-radius: 999px;
	color: #f8fafc;
	cursor: pointer;
	display: inline-flex;
	font-size: 24px;
	font-weight: 700;
	height: 38px;
	justify-content: center;
	line-height: 1;
	padding: 0 0 2px;
	position: absolute;
	right: 12px;
	text-align: center;
	top: 12px;
	width: 38px;
	z-index: 2;
}

.cbk-hero-details-portrait {
	aspect-ratio: 3 / 4;
	border-radius: 14px;
}

.cbk-hero-details-body h3 {
	color: var(--hero-text);
	font-size: 36px;
	line-height: 1;
	margin: 6px 0 10px;
}

.cbk-hero-details-body p {
	color: #cbd5e1;
}

.cbk-hero-details-meta {
	display: flex;
	flex-wrap: wrap;
	gap: 7px;
}

.cbk-hero-details-meta span,
.cbk-hero-details-upgrade div {
	background: rgba(8, 17, 31, .62);
	border: 1px solid rgba(148, 163, 184, .16);
	border-radius: 999px;
	color: #dbeafe;
	font-size: 12px;
	font-weight: 900;
	padding: 7px 10px;
}

.cbk-hero-details-stats {
	display: grid;
	gap: 8px;
	margin-top: 14px;
}

.cbk-hero-details-stats > div {
	display: grid;
	gap: 5px;
	grid-template-columns: 82px 70px minmax(0, 1fr);
}

.cbk-hero-details-stats span,
.cbk-hero-details-stats strong {
	color: #e2e8f0;
	font-size: 12px;
	font-weight: 900;
}

.cbk-hero-details-stats em {
	align-self: center;
	background: rgba(8, 17, 31, .78);
	border-radius: 999px;
	height: 8px;
	overflow: hidden;
}

.cbk-hero-details-stats i {
	background: linear-gradient(90deg, #0ea5e9, #f6c453);
	display: block;
	height: 100%;
}

.cbk-hero-details-upgrade {
	background: rgba(8, 17, 31, .48);
	border: 1px solid rgba(148, 163, 184, .14);
	border-radius: 12px;
	display: grid;
	gap: 8px;
	margin-top: 14px;
	padding: 12px;
}

.cbk-hero-details-upgrade h4,
.cbk-hero-details-upgrade p {
	margin: 0;
}

.cbk-hero-details-upgrade h4 {
	color: var(--hero-gold);
}

.cbk-hero-details-upgrade div {
	border-radius: 8px;
	display: flex;
	justify-content: space-between;
}

@media (max-width: 1180px) {
	.cbk-hero-command-center,
	.cbk-champion-showcase {
		grid-template-columns: 1fr;
	}

	.cbk-champion-showcase-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.cbk-hero-command-stats {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.cbk-rpg-hero-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media (max-width: 760px) {
	.cbk-heroes-command-page {
		padding: 12px;
	}

	.cbk-hero-command-stats,
	.cbk-hero-filters,
	.cbk-hero-details-dialog {
		grid-template-columns: 1fr;
	}

	.cbk-hero-roster-toolbar,
	.cbk-roster-currency {
		align-items: stretch;
		grid-template-columns: 1fr 1fr;
		flex-direction: column;
	}

	.cbk-rpg-hero-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.cbk-champion-showcase-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.cbk-hero-details-dialog {
		max-height: 92vh;
		overflow: auto;
	}
}

.cbk-train-page .cbk-qty-control input[type="number"] {
	border-radius: 0 !important;
}

.cbk-train-page .cbk-train-unit-card.is-locked {
	border-color: rgba(148, 163, 184, .18) !important;
	filter: saturate(.78);
}

.cbk-train-page .cbk-train-unit-card.is-locked .cbk-product-media,
.cbk-train-page .cbk-train-unit-card.is-locked .cbk-power-line,
.cbk-train-page .cbk-train-unit-card.is-locked .cbk-stat-grid,
.cbk-train-page .cbk-train-unit-card.is-locked .cbk-resource-cost-line {
	opacity: .64;
}

.cbk-train-page .cbk-train-unit-card.is-locked .ck-button[disabled] {
	background: rgba(15, 23, 42, .86) !important;
	border: 1px solid rgba(245, 158, 11, .34) !important;
	color: #fde68a !important;
	opacity: 1 !important;
}
/* Season hero media sizing: show full art and cap View Rewards CTA. */
.cbk-season-rankings .cbk-season-banner-hero,
.cbk-season-page .cbk-season-banner-hero {
	align-items: center !important;
	display: flex !important;
	justify-content: center !important;
}

.cbk-season-rankings .cbk-season-hero-placeholder,
.cbk-season-page .cbk-season-hero-placeholder,
.cbk-season-rankings .cbk-season-banner-hero img,
.cbk-season-page .cbk-season-banner-hero img {
	aspect-ratio: 1 / 1 !important;
	height: auto !important;
	max-height: none !important;
	max-width: min(440px, 100%) !important;
	object-fit: contain !important;
	width: min(440px, 100%) !important;
}

.cbk-season-rankings .cbk-season-hero-placeholder img,
.cbk-season-page .cbk-season-hero-placeholder img {
	height: 100% !important;
	object-fit: contain !important;
	width: 100% !important;
}

.cbk-season-rankings .cbk-season-banner a[href="#season-rewards"],
.cbk-season-page .cbk-season-banner a[href="#season-rewards"] {
	max-width: 500px !important;
	width: min(100%, 500px) !important;
}

@media (max-width: 767px) {
	.cbk-season-rankings .cbk-season-hero-placeholder,
	.cbk-season-page .cbk-season-hero-placeholder,
	.cbk-season-rankings .cbk-season-banner-hero img,
	.cbk-season-page .cbk-season-banner-hero img {
		max-width: min(340px, 88vw) !important;
		width: min(340px, 88vw) !important;
	}
}

/* Dashboard season/tasks tablet stack override. */
@media (max-width: 991px) {
	.cbk-dashboard-shell .cbk-season-quest-row {
		display: grid !important;
		grid-template-columns: 1fr !important;
		gap: 18px !important;
	}

	.cbk-dashboard-shell .cbk-season-quest-row > .cbk-season-card,
	.cbk-dashboard-shell .cbk-season-quest-row > .ck-daily-quests {
		grid-column: 1 / -1 !important;
		max-width: none !important;
		min-width: 0 !important;
		width: 100% !important;
	}
}

/* Dashboard Daily Quests mobile two-row layout. */
@media (max-width: 560px) {
	.cbk-dashboard-shell .cbk-season-quest-row .ck-daily-quests .ck-quest-row.cbk-quest-clickable {
		align-items: center !important;
		gap: 8px 10px !important;
		grid-template-columns: minmax(0, 1fr) auto !important;
		padding: 12px !important;
	}

	.cbk-dashboard-shell .cbk-season-quest-row .ck-daily-quests .ck-quest-row.cbk-quest-clickable .cbk-quest-main {
		grid-column: 1 / -1 !important;
		grid-row: 1 !important;
		min-width: 0 !important;
		width: 100% !important;
	}

	.cbk-dashboard-shell .cbk-season-quest-row .ck-daily-quests .ck-quest-row.cbk-quest-clickable .cbk-quest-rewards {
		grid-column: 1 / 2 !important;
		grid-row: 2 !important;
		justify-content: flex-start !important;
		justify-self: start !important;
		min-width: 0 !important;
		white-space: normal !important;
	}

	.cbk-dashboard-shell .cbk-season-quest-row .ck-daily-quests .ck-quest-row.cbk-quest-clickable .ck-quest-status {
		grid-column: 2 / 3 !important;
		grid-row: 2 !important;
		justify-self: end !important;
		max-width: 100% !important;
		white-space: nowrap !important;
	}

	.cbk-dashboard-shell .cbk-season-quest-row .ck-daily-quests .ck-quest-row.cbk-quest-clickable .cbk-reward-icon {
		font-size: 11px !important;
		padding: 4px 8px !important;
	}
}
.cbk-rank-tier-emblem,
.cbk-rank-row-emblem,
.cbk-season-row-tier {
	align-items: center;
	display: inline-flex;
	justify-content: center;
}

.cbk-rank-tier-emblem .cbk-tier-image,
.cbk-rank-tier-emblem img.cbk-tier-image {
	height: 56px;
	width: 56px;
}

.cbk-rank-row-emblem .cbk-tier-image,
.cbk-rank-row-emblem img.cbk-tier-image,
.cbk-season-row-tier .cbk-tier-image,
.cbk-season-row-tier img.cbk-tier-image {
	height: 34px;
	width: 34px;
}

.cbk-rank-tier-emblem .cbk-tier-image,
.cbk-rank-row-emblem .cbk-tier-image,
.cbk-season-row-tier .cbk-tier-image {
	margin: 0;
}

.cbk-tier-emblem-generated {
	align-items: center;
	background: linear-gradient(145deg, #64748b, #1e293b);
	border: 1px solid rgba(255, 255, 255, .32);
	border-radius: 10px 10px 14px 14px;
	box-shadow: inset 0 0 18px rgba(255, 255, 255, .16), 0 8px 20px rgba(0, 0, 0, .24);
	clip-path: polygon(50% 0, 88% 14%, 80% 74%, 50% 100%, 20% 74%, 12% 14%);
	display: inline-flex;
	justify-content: center;
	position: relative;
}

.cbk-tier-emblem-generated::before {
	background: rgba(255, 255, 255, .38);
	clip-path: polygon(50% 0, 62% 35%, 100% 35%, 69% 56%, 82% 100%, 50% 72%, 18% 100%, 31% 56%, 0 35%, 38% 35%);
	content: "";
	height: 42%;
	width: 42%;
}

.cbk-tier-emblem-warrior {
	background: linear-gradient(145deg, #d1d5db, #64748b);
}

.cbk-tier-emblem-knight {
	background: linear-gradient(145deg, #fef3c7, #d97706);
}

.cbk-tier-emblem-captain {
	background: linear-gradient(145deg, #bae6fd, #0284c7);
}

.cbk-tier-emblem-commander {
	background: linear-gradient(145deg, #ddd6fe, #7c3aed);
}

.cbk-tier-emblem-general {
	background: linear-gradient(145deg, #fecaca, #dc2626);
}

.cbk-tier-emblem-warlord {
	background: linear-gradient(145deg, #fde68a, #f97316 48%, #7c2d12);
}

.cbk-seasonal-ranking-board {
	display: grid;
	gap: 16px;
}

.cbk-season-ranking-grid {
	display: grid;
	gap: 14px;
	grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
}

.cbk-season-compact-board {
	background: rgba(15, 23, 42, .56);
	border: 1px solid rgba(148, 163, 184, .22);
	border-radius: 14px;
	display: grid;
	gap: 10px;
	padding: 14px;
}

.cbk-season-compact-board h4 {
	color: #fff;
	font-size: 15px;
	margin: 0;
}

.cbk-season-compact-list {
	display: grid;
	gap: 8px;
}

.cbk-season-compact-row {
	align-items: center;
	background: rgba(15, 23, 42, .6);
	border: 1px solid rgba(148, 163, 184, .18);
	border-radius: 10px;
	display: grid;
	gap: 8px;
	grid-template-columns: auto auto minmax(0, 1fr) auto;
	padding: 8px;
}

.cbk-season-compact-row strong {
	color: #fff;
	min-width: 0;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.cbk-season-compact-row em {
	color: #38bdf8;
	font-style: normal;
	font-weight: 800;
}
/* CardBerus Kingdom rankings redesign */
.ck-wrap.cbk-rankings-page {
	--rank-bg: #08111f;
	--rank-panel: rgba(12, 23, 39, .94);
	--rank-panel-soft: rgba(15, 30, 52, .78);
	--rank-line: rgba(148, 163, 184, .2);
	--rank-gold: #f59e0b;
	--rank-gold-2: #ffb21f;
	--rank-cyan: #38bdf8;
	--rank-text: #f8fafc;
	--rank-muted: #94a3b8;
	margin-left: auto;
	margin-right: auto;
	max-width: 1180px;
	width: min(100%, 1180px);
}

.cbk-rankings-page .cbk-rankings-shell {
	background:
		radial-gradient(circle at top left, rgba(245, 158, 11, .16), transparent 32%),
		radial-gradient(circle at right 18%, rgba(56, 189, 248, .1), transparent 30%),
		linear-gradient(145deg, rgba(8, 17, 31, .98), rgba(17, 24, 39, .97));
	border: 1px solid rgba(245, 158, 11, .28);
	border-radius: 16px;
	box-shadow: 0 24px 70px rgba(0, 0, 0, .34);
	color: var(--rank-text);
	display: grid;
	gap: 14px;
	overflow: hidden;
	padding: 18px;
	position: relative;
}

.cbk-rankings-page .cbk-rankings-shell::after {
	background: radial-gradient(circle at center, transparent 45%, rgba(0, 0, 0, .32));
	content: "";
	inset: 0;
	pointer-events: none;
	position: absolute;
}

.cbk-rankings-page .cbk-rankings-shell > * {
	position: relative;
	z-index: 1;
}

.cbk-rankings-page .cbk-rankings-hero-v2 {
	align-items: center;
	background: linear-gradient(135deg, rgba(15, 23, 42, .92), rgba(12, 23, 39, .78));
	border: 1px solid var(--rank-line);
	border-radius: 14px;
	display: grid;
	gap: 16px;
	grid-template-columns: 90px minmax(0, 1fr) auto;
	padding: 16px;
}

.cbk-rankings-page .cbk-rankings-hero-emblem {
	align-items: center;
	background: transparent;
	display: flex;
	justify-content: center;
}

.cbk-rankings-page .cbk-rankings-hero-emblem .cbk-tier-image,
.cbk-rankings-page .cbk-rankings-hero-emblem img.cbk-tier-image {
	background: transparent !important;
	border: 0 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	height: 74px;
	margin: 0;
	object-fit: contain;
	padding: 0 !important;
	width: 74px;
}

.cbk-rankings-page .cbk-rankings-kicker {
	color: var(--rank-gold-2);
	display: block;
	font-size: 11px;
	font-weight: 900;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.cbk-rankings-page .cbk-rankings-hero-copy h2,
.cbk-rankings-page .cbk-board-title h3,
.cbk-rankings-page .cbk-reward-preview-panel h3 {
	color: var(--rank-text);
	margin: 0;
}

.cbk-rankings-page .cbk-rankings-hero-copy h2 {
	font-size: clamp(30px, 4vw, 48px);
	line-height: 1;
}

.cbk-rankings-page .cbk-rankings-hero-copy p {
	color: #cbd5e1;
	margin: 7px 0 0;
	max-width: 640px;
}

.cbk-rankings-page .cbk-current-leader {
	background: rgba(245, 158, 11, .12);
	border: 1px solid rgba(245, 158, 11, .32);
	border-radius: 999px;
	color: #fde68a;
	display: inline-flex;
	font-size: 12px;
	gap: 4px;
	margin-top: 10px;
	padding: 5px 10px;
}

.cbk-rankings-page .cbk-rankings-actions {
	align-items: stretch;
	display: flex;
	flex-direction: column;
	gap: 8px;
	min-width: 210px;
}

.cbk-rankings-page .cbk-rankings-actions .ck-button {
	min-height: 36px;
	white-space: nowrap;
}

.cbk-rankings-page .cbk-rankings-actions .cbk-war-primary {
	background: linear-gradient(135deg, #f59e0b, #f97316);
	border: 1px solid rgba(253, 186, 116, .85);
	box-shadow: 0 12px 26px rgba(249, 115, 22, .24);
	color: #111827;
	order: 1;
}

.cbk-rankings-page .cbk-rankings-actions .cbk-season-secondary {
	background: rgba(8, 17, 31, .78);
	border: 1px solid rgba(245, 158, 11, .58);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, .04);
	color: #fde68a;
	order: 2;
}

.cbk-rankings-page .cbk-daily-bonus-widget {
	background: linear-gradient(180deg, rgba(15, 23, 42, .82), rgba(8, 17, 31, .86));
	border: 1px solid rgba(148, 163, 184, .2);
	border-radius: 10px;
	display: grid;
	gap: 4px;
	order: 3;
	padding: 9px 10px;
}

.cbk-rankings-page .cbk-daily-bonus-widget.is-available {
	border-color: rgba(245, 158, 11, .42);
	box-shadow: 0 0 18px rgba(245, 158, 11, .1);
}

.cbk-rankings-page .cbk-daily-bonus-widget span {
	color: #fde68a;
	font-size: 11px;
	font-weight: 900;
	letter-spacing: .04em;
	text-transform: uppercase;
}

.cbk-rankings-page .cbk-daily-bonus-widget button {
	background: transparent;
	border: 0;
	color: #e2e8f0;
	cursor: pointer;
	font-size: 13px;
	font-weight: 900;
	padding: 0;
	text-align: left;
}

.cbk-rankings-page .cbk-daily-bonus-widget button:disabled {
	color: #94a3b8;
	cursor: default;
}

.cbk-rankings-page .cbk-my-rank-panel {
	background: rgba(15, 23, 42, .64);
	border: 1px solid var(--rank-line);
	border-radius: 12px;
	display: grid;
	gap: 8px;
	grid-template-columns: repeat(7, minmax(0, 1fr));
	padding: 10px;
}

.cbk-rankings-page .cbk-my-rank-panel > div {
	background: rgba(8, 17, 31, .72);
	border: 1px solid rgba(148, 163, 184, .14);
	border-radius: 9px;
	padding: 9px 10px;
}

.cbk-rankings-page .cbk-my-rank-panel span,
.cbk-rankings-page .cbk-board-summary span,
.cbk-rankings-page .cbk-row-score em {
	color: var(--rank-muted);
	display: block;
	font-size: 10px;
	font-style: normal;
	font-weight: 800;
	letter-spacing: .04em;
	text-transform: uppercase;
}

.cbk-rankings-page .cbk-my-rank-panel strong {
	color: var(--rank-text);
	display: block;
	font-size: 15px;
	line-height: 1.2;
	margin-top: 3px;
}

.cbk-rankings-page .cbk-ranking-mode-tabs,
.cbk-rankings-page .cbk-season-subtabs {
	display: grid;
}

.cbk-rankings-page .cbk-ranking-mode-tabs {
	background: rgba(8, 17, 31, .42);
	border: 1px solid rgba(148, 163, 184, .18);
	border-radius: 13px;
	gap: 8px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	padding: 6px;
}

.cbk-rankings-page .cbk-season-subtabs {
	align-items: end;
	display: flex;
	gap: 28px;
	padding: 2px 6px 0;
}

.cbk-rankings-page .cbk-ranking-mode-tabs a {
	background: rgba(15, 30, 52, .84);
	border: 1px solid rgba(148, 163, 184, .24);
	border-radius: 9px;
	color: #f8fafc;
	font-weight: 900;
	padding: 13px 16px;
	text-align: center;
	text-decoration: none;
}

.cbk-rankings-page .cbk-ranking-mode-tabs a:hover {
	border-color: rgba(226, 232, 240, .36);
	color: #ffffff;
}

.cbk-rankings-page .cbk-ranking-mode-tabs a.is-active {
	background: linear-gradient(180deg, rgba(30, 41, 59, .96), rgba(15, 23, 42, .92));
	border-color: rgba(245, 158, 11, .72);
	box-shadow: 0 0 20px rgba(245, 158, 11, .12), inset 0 1px 0 rgba(255, 255, 255, .06);
	color: #fde68a;
}

.cbk-rankings-page .cbk-season-subtabs a {
	border-bottom: 2px solid transparent;
	color: #cbd5e1;
	font-size: 14px;
	font-weight: 900;
	padding: 8px 2px 10px;
	position: relative;
	text-align: center;
	text-decoration: none;
}

.cbk-rankings-page .cbk-season-subtabs a:hover {
	color: #f8fafc;
}

.cbk-rankings-page .cbk-season-subtabs a.is-active {
	color: #fde68a;
	text-shadow: 0 0 14px rgba(245, 158, 11, .28);
}

.cbk-rankings-page .cbk-season-subtabs a.is-active::after {
	background: linear-gradient(90deg, rgba(245, 158, 11, 0), #f59e0b, rgba(245, 158, 11, 0));
	border-radius: 999px;
	bottom: 0;
	content: "";
	height: 2px;
	left: 0;
	position: absolute;
	right: 0;
}

.cbk-rankings-page .cbk-leaderboard-panel,
.cbk-rankings-page .cbk-reward-preview-panel {
	background: var(--rank-panel);
	border: 1px solid var(--rank-line);
	border-radius: 14px;
	display: grid;
	gap: 12px;
	padding: 14px;
}

.cbk-rankings-page .cbk-board-title {
	align-items: center;
	display: flex;
	gap: 12px;
	justify-content: space-between;
}

.cbk-rankings-page .cbk-board-summary {
	align-items: center;
	background: rgba(8, 17, 31, .55);
	border: 1px solid rgba(148, 163, 184, .16);
	border-radius: 10px;
	display: grid;
	gap: 4px 10px;
	grid-template-columns: auto auto auto auto;
	padding: 8px 10px;
}

.cbk-rankings-page .cbk-board-summary strong {
	color: var(--rank-cyan);
	font-size: 14px;
}

.cbk-rankings-page .cbk-champion-podium {
	background: linear-gradient(135deg, rgba(30, 41, 59, .76), rgba(8, 17, 31, .72));
	border: 1px solid rgba(245, 158, 11, .18);
	border-radius: 12px;
	display: grid;
	gap: 10px;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	padding: 10px;
}

.cbk-rankings-page .cbk-podium-compact-item {
	align-items: center;
	background: rgba(15, 23, 42, .72);
	border: 1px solid rgba(148, 163, 184, .2);
	border-radius: 10px;
	display: grid;
	gap: 8px;
	grid-template-columns: auto 48px minmax(0, 1fr);
	padding: 10px;
}

.cbk-rankings-page .cbk-podium-compact-item .cbk-row-score,
.cbk-rankings-page .cbk-podium-compact-item .cbk-row-mini-stat {
	background: rgba(8, 17, 31, .68);
	border: 1px solid rgba(148, 163, 184, .16);
	border-radius: 8px;
	padding: 6px 8px;
}

.cbk-rankings-page .cbk-podium-compact-item .cbk-row-score {
	grid-column: 1 / -1;
}

.cbk-rankings-page .cbk-podium-compact-item .cbk-row-mini-stat {
	color: var(--rank-muted);
	font-size: 11px;
	font-weight: 900;
}

.cbk-rankings-page .cbk-podium-compact-item .cbk-row-mini-stat strong {
	color: var(--rank-text);
}

.cbk-rankings-page .cbk-leaderboard-header,
.cbk-rankings-page .cbk-leaderboard-row {
	align-items: center;
	display: grid;
	gap: 8px;
	grid-template-columns: 48px 56px minmax(160px, 1.4fr) 130px 90px 90px 110px 110px;
}

.cbk-rankings-page .cbk-leaderboard-header {
	color: var(--rank-muted);
	font-size: 10px;
	font-weight: 900;
	letter-spacing: .05em;
	padding: 0 10px;
	text-transform: uppercase;
}

.cbk-rankings-page .cbk-leaderboard-rows {
	display: grid;
	gap: 8px;
}

.cbk-rankings-page .cbk-leaderboard-row {
	background: rgba(15, 23, 42, .74);
	border: 1px solid rgba(148, 163, 184, .18);
	border-radius: 11px;
	color: #dbeafe;
	min-height: 62px;
	padding: 8px 10px;
}

.cbk-rankings-page .cbk-leaderboard-row.is-current {
	border-color: rgba(245, 158, 11, .55);
	box-shadow: inset 0 0 0 1px rgba(245, 158, 11, .08);
}

.cbk-rankings-page .cbk-rank-badge {
	align-items: center;
	background: rgba(14, 116, 144, .2);
	border: 1px solid rgba(56, 189, 248, .3);
	border-radius: 999px;
	color: #bae6fd;
	display: inline-flex;
	font-size: 12px;
	font-weight: 900;
	justify-content: center;
	min-width: 36px;
	padding: 5px 8px;
	width: fit-content;
}

.cbk-rankings-page .cbk-rank-badge.is-top,
.cbk-rankings-page .cbk-rank-1 .cbk-rank-badge,
.cbk-rankings-page .cbk-rank-2 .cbk-rank-badge,
.cbk-rankings-page .cbk-rank-3 .cbk-rank-badge {
	background: linear-gradient(135deg, var(--rank-gold), #f97316);
	border-color: rgba(253, 186, 116, .9);
	color: #111827;
}

.cbk-rankings-page .cbk-row-tier-emblem {
	align-items: center;
	display: flex;
	justify-content: center;
}

.cbk-rankings-page .cbk-row-tier-emblem .cbk-tier-image,
.cbk-rankings-page .cbk-row-tier-emblem img.cbk-tier-image {
	background: transparent !important;
	border: 0 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	height: 42px;
	margin: 0;
	object-fit: contain;
	padding: 0 !important;
	width: 42px;
}

.cbk-rankings-page .cbk-row-kingdom {
	display: grid;
	min-width: 0;
}

.cbk-rankings-page .cbk-row-kingdom strong {
	color: var(--rank-text);
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.cbk-rankings-page .cbk-row-kingdom small {
	color: var(--rank-muted);
	font-size: 11px;
}

.cbk-rankings-page .cbk-row-score strong,
.cbk-rankings-page .cbk-leaderboard-row .cbk-row-score strong {
	color: var(--rank-cyan);
	font-size: 18px;
}

.cbk-rankings-page .cbk-leaderboard-row > span:not(.cbk-rank-badge):not(.cbk-row-tier-emblem):not(.cbk-row-kingdom):not(.cbk-row-score) {
	background: rgba(8, 17, 31, .48);
	border: 1px solid rgba(148, 163, 184, .12);
	border-radius: 8px;
	color: var(--rank-text);
	font-weight: 800;
	padding: 7px 8px;
	text-align: center;
}

.cbk-rankings-page .cbk-reward-preview-grid {
	display: grid;
	gap: 12px;
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.cbk-rankings-page .cbk-reward-preview-column {
	background: linear-gradient(180deg, rgba(15, 23, 42, .7), rgba(6, 14, 27, .76));
	border: 1px solid rgba(251, 191, 36, .16);
	border-radius: 8px;
	display: grid;
	gap: 10px;
	padding: 12px;
}

.cbk-rankings-page .cbk-reward-preview-column h4 {
	color: #fde68a;
	font-size: 15px;
	line-height: 1.1;
	margin: 0;
}

.cbk-rankings-page .cbk-reward-preview-pills {
	display: flex;
	flex-direction: column;
	gap: 7px;
}

.cbk-rankings-page .cbk-reward-preview-pill-row {
	align-items: center;
	background: rgba(8, 17, 31, .46);
	border: 1px solid rgba(148, 163, 184, .12);
	border-radius: 999px;
	display: grid;
	gap: 8px;
	grid-template-columns: minmax(96px, .7fr) minmax(0, 1.3fr);
	min-height: 38px;
	padding: 6px 8px 6px 12px;
}

.cbk-rankings-page .cbk-reward-preview-pill-row strong {
	color: var(--rank-text);
	font-size: 12px;
	line-height: 1.1;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.cbk-rankings-page .cbk-reward-pill-list {
	display: flex;
	flex-wrap: wrap;
	gap: 5px;
	justify-content: flex-end;
	min-width: 0;
}

.cbk-rankings-page .cbk-reward-pill {
	align-items: center;
	background: rgba(15, 23, 42, .86);
	border: 1px solid rgba(148, 163, 184, .2);
	border-radius: 999px;
	color: #cbd5e1;
	display: inline-flex;
	font-size: 11px;
	font-weight: 800;
	gap: 4px;
	line-height: 1;
	min-height: 24px;
	padding: 6px 9px;
	white-space: nowrap;
}

.cbk-rankings-page .cbk-reward-pill::before {
	background: #94a3b8;
	border-radius: 999px;
	box-shadow: 0 0 0 3px rgba(148, 163, 184, .12);
	content: "";
	height: 6px;
	width: 6px;
}

.cbk-rankings-page .cbk-reward-pill.is-gold {
	background: rgba(120, 53, 15, .28);
	border-color: rgba(251, 191, 36, .34);
	color: #fde68a;
}

.cbk-rankings-page .cbk-reward-pill.is-gold::before {
	background: #f59e0b;
	box-shadow: 0 0 0 3px rgba(245, 158, 11, .16);
}

.cbk-rankings-page .cbk-reward-pill.is-shards {
	background: rgba(8, 145, 178, .18);
	border-color: rgba(34, 211, 238, .28);
	color: #a5f3fc;
}

.cbk-rankings-page .cbk-reward-pill.is-shards::before {
	background: #22d3ee;
	box-shadow: 0 0 0 3px rgba(34, 211, 238, .14);
}

.cbk-rankings-page .cbk-reward-pill.is-frame {
	background: rgba(124, 58, 237, .18);
	border-color: rgba(167, 139, 250, .3);
	color: #ddd6fe;
}

.cbk-rankings-page .cbk-reward-pill.is-frame::before {
	background: #a78bfa;
	box-shadow: 0 0 0 3px rgba(167, 139, 250, .14);
}

.cbk-rankings-page .cbk-reward-pill.is-chest {
	background: rgba(234, 88, 12, .18);
	border-color: rgba(251, 146, 60, .3);
	color: #fed7aa;
}

.cbk-rankings-page .cbk-reward-pill.is-chest::before {
	background: #fb923c;
	box-shadow: 0 0 0 3px rgba(251, 146, 60, .14);
}

@media (max-width: 1024px) {
	.cbk-rankings-page .cbk-rankings-hero-v2 {
		grid-template-columns: 78px minmax(0, 1fr);
	}

	.cbk-rankings-page .cbk-rankings-actions {
		flex-direction: row;
		grid-column: 1 / -1;
		min-width: 0;
	}

	.cbk-rankings-page .cbk-daily-bonus-widget {
		min-width: 190px;
	}

	.cbk-rankings-page .cbk-my-rank-panel {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}

	.cbk-rankings-page .cbk-leaderboard-header,
	.cbk-rankings-page .cbk-leaderboard-row {
		grid-template-columns: 48px 56px minmax(150px, 1.4fr) 120px repeat(4, 72px);
	}
}

@media (max-width: 820px) {
	.cbk-rankings-page .cbk-rankings-shell {
		padding: 12px;
	}

	.cbk-rankings-page .cbk-rankings-hero-v2,
	.cbk-rankings-page .cbk-board-title {
		align-items: stretch;
		grid-template-columns: 1fr;
	}

	.cbk-rankings-page .cbk-rankings-hero-emblem {
		justify-content: flex-start;
	}

	.cbk-rankings-page .cbk-rankings-actions,
	.cbk-rankings-page .cbk-ranking-mode-tabs,
	.cbk-rankings-page .cbk-season-subtabs,
	.cbk-rankings-page .cbk-champion-podium,
	.cbk-rankings-page .cbk-reward-preview-grid {
		grid-template-columns: 1fr;
	}

	.cbk-rankings-page .cbk-rankings-actions {
		flex-direction: column;
	}

	.cbk-rankings-page .cbk-season-subtabs {
		flex-wrap: wrap;
		gap: 18px;
	}

	.cbk-rankings-page .cbk-daily-bonus-widget {
		min-width: 0;
	}

	.cbk-rankings-page .cbk-my-rank-panel {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.cbk-rankings-page .cbk-reward-preview-pill-row {
		border-radius: 12px;
		grid-template-columns: 1fr;
	}

	.cbk-rankings-page .cbk-reward-pill-list {
		justify-content: flex-start;
	}

	.cbk-rankings-page .cbk-board-summary {
		grid-template-columns: auto auto;
	}

	.cbk-rankings-page .cbk-leaderboard-header {
		display: none;
	}

	.cbk-rankings-page .cbk-leaderboard-row {
		align-items: center;
		grid-template-columns: auto 50px minmax(0, 1fr);
	}

	.cbk-rankings-page .cbk-leaderboard-row .cbk-row-score {
		grid-column: 1 / -1;
	}

	.cbk-rankings-page .cbk-leaderboard-row > span:not(.cbk-rank-badge):not(.cbk-row-tier-emblem):not(.cbk-row-kingdom):not(.cbk-row-score) {
		display: flex;
		justify-content: space-between;
		text-align: left;
	}

	.cbk-rankings-page .cbk-leaderboard-row > span[data-label]::before {
		color: var(--rank-muted);
		content: attr(data-label);
		font-size: 10px;
		font-weight: 900;
		text-transform: uppercase;
	}
}

@media (max-width: 520px) {
	.cbk-rankings-page .cbk-my-rank-panel {
		grid-template-columns: 1fr;
	}
}




/* WAR COMMAND CENTER BEAUTIFY */
.ck-war-stage,
.ck-attack-panel,
.ck-battle-report {
    background:
        radial-gradient(circle at top left, rgba(56,189,248,.12), transparent 35%),
        linear-gradient(180deg, #101827, #07111f);
    border: 1px solid rgba(148,163,184,.22);
    border-radius: 22px;
    box-shadow: 0 18px 45px rgba(0,0,0,.35);
}

/* Hero + attacker cards */
.ck-hero-card,
.ck-attacker-card {
    background: linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.03));
    border: 1px solid rgba(245,158,11,.55);
    border-radius: 14px;
    box-shadow: 0 0 25px rgba(245,158,11,.18);
    transition: transform .2s ease, box-shadow .2s ease;
}

.ck-hero-card:hover,
.ck-attacker-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 0 35px rgba(245,158,11,.32);
}

/* Stat cards */
.ck-war-stat,
.ck-attack-stat,
.ck-battle-stat {
    background:
        linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.025));
    border: 1px solid rgba(148,163,184,.24);
    border-radius: 14px;
    padding: 18px;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.05);
}

.ck-war-stat span,
.ck-attack-stat span,
.ck-battle-stat span {
    color: #9fb3c8;
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: .06em;
}

.ck-war-stat strong,
.ck-attack-stat strong,
.ck-battle-stat strong {
    display: block;
    margin-top: 8px;
    color: #fff;
    font-size: 28px;
    font-weight: 900;
}

/* Battle phase timeline */
.ck-battle-phases,
.ck-battle-log {
    position: relative;
    max-width: 760px;
    margin: 24px auto;
    padding-left: 34px;
}

.ck-battle-phases::before,
.ck-battle-log::before {
    content: "";
    position: absolute;
    left: 13px;
    top: 10px;
    bottom: 10px;
    width: 2px;
    background: linear-gradient(180deg, #38bdf8, #22c55e);
    opacity: .65;
}

.ck-battle-phase,
.ck-phase {
    position: relative;
    margin-bottom: 12px;
    padding: 14px 16px;
    background: linear-gradient(180deg, rgba(30,41,59,.95), rgba(15,23,42,.95));
    border: 1px solid rgba(148,163,184,.22);
    border-left: 4px solid #38bdf8;
    border-radius: 12px;
}

.ck-battle-phase::before,
.ck-phase::before {
    content: "";
    position: absolute;
    left: -29px;
    top: 18px;
    width: 12px;
    height: 12px;
    background: #38bdf8;
    border-radius: 50%;
    box-shadow: 0 0 14px rgba(56,189,248,.9);
}

.ck-battle-phase strong,
.ck-phase strong {
    color: #93c5fd;
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: .08em;
}

.ck-battle-phase p,
.ck-phase p {
    margin: 4px 0 0;
    color: #f8fafc;
    font-weight: 700;
}

/* Victory result */
.ck-battle-result,
.ck-victory-box {
    background:
        radial-gradient(circle at center, rgba(34,197,94,.28), rgba(34,197,94,.08) 45%, rgba(15,23,42,.95));
    border: 2px solid rgba(34,197,94,.45);
    border-radius: 22px;
    padding: 42px 24px;
    text-align: center;
    box-shadow: 0 0 42px rgba(34,197,94,.28);
}

.ck-battle-result h2,
.ck-victory-box h2 {
    margin: 0 0 18px;
    color: #86efac;
    font-size: clamp(38px, 6vw, 64px);
    font-weight: 1000;
    letter-spacing: .08em;
    text-transform: uppercase;
    text-shadow: 0 0 20px rgba(34,197,94,.45);
}


/* Buttons */
.ck-button,
.ck-war-button,
.ck-ajax-button {
    border-radius: 999px;
    padding: 11px 22px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .04em;
}

.ck-war-button-primary,
.ck-ajax-button {
    background: linear-gradient(135deg, #f59e0b, #f97316);
    border: 1px solid rgba(251,191,36,.7);
    color: #111827;
    box-shadow: 0 8px 22px rgba(249,115,22,.25);
}

.ck-war-button-secondary,
.ck-button {
    background: linear-gradient(180deg, #1e293b, #111827);
    border: 1px solid rgba(148,163,184,.35);
    color: #e5e7eb;
}


/* BATTLE RESULT - VICTORY / DEFEAT */
.ck-battle-result {
    position: relative;
    overflow: hidden;
    margin-top: 22px;
    padding: 42px 24px;
    border-radius: 22px;
    text-align: center;
}

/* when JS outputs Victory text */
.ck-battle-result:has(h2),
.ck-battle-result:not([hidden]) {
    background:
        radial-gradient(circle at center, rgba(34,197,94,.25), rgba(34,197,94,.06) 45%, rgba(15,23,42,.96));
    border: 2px solid rgba(34,197,94,.45);
    box-shadow: 0 0 42px rgba(34,197,94,.25);
}

.ck-battle-result h2 {
    margin: 0 0 18px;
    color: #86efac;
    font-size: clamp(38px, 6vw, 64px);
    font-weight: 1000;
    letter-spacing: .08em;
    text-transform: uppercase;
    text-shadow: 0 0 20px rgba(34,197,94,.45);
}

/* DEFEAT - use this if your JS/PHP adds class="defeat" */
.ck-battle-result.defeat {
    background:
        radial-gradient(circle at center, rgba(220,38,38,.24), rgba(127,29,29,.10) 45%, rgba(15,23,42,.96));
    border-color: rgba(220,38,38,.5);
    box-shadow: 0 0 42px rgba(220,38,38,.28);
}

.ck-battle-result.defeat h2 {
    color: #f87171;
    text-shadow: 0 0 20px rgba(239,68,68,.5);
}

.ck-battle-result.defeat::after {
    content: "⚔";
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%) rotate(45deg);
    font-size: 220px;
    opacity: .045;
    pointer-events: none;
}

/* VICTORY - use this if your JS/PHP adds class="victory" */
.ck-battle-result.victory {
    background:
        radial-gradient(circle at center, rgba(34,197,94,.28), rgba(34,197,94,.08) 45%, rgba(15,23,42,.96));
    border-color: rgba(34,197,94,.5);
    box-shadow: 0 0 42px rgba(34,197,94,.3);
}

.ck-battle-result.victory h2 {
    color: #86efac;
}



/* Mobile */
@media (max-width: 768px) {
    .ck-battle-phases,
    .ck-battle-log {
        padding-left: 26px;
        margin: 18px auto;
    }

    .ck-battle-phase,
    .ck-phase {
        padding: 12px 14px;
    }

    .ck-war-stat strong,
    .ck-attack-stat strong,
    .ck-battle-stat strong {
        font-size: 22px;
    }
}


