:root {
	--tblr-font-sans-serif: 'Inter', -apple-system, BlinkMacSystemFont, San Francisco, Segoe UI, Roboto, Helvetica Neue, sans-serif;
	--tblr-success: #10B981;
	--tblr-success-rgb: 16, 185, 129;
}
body {
	font-feature-settings: "cv03", "cv04", "cv11";
}
a.card:hover {
	box-shadow: none !important;
}
.bg-success {
	background-color: #10B981 !important;
}
.card {
	--tblr-card-border-radius: 0.5rem;
	margin-bottom: 1rem;
}

.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active,
.btn-primary.active {
	background-color: var(--tblr-primary) !important;
	border-color: var(--tblr-primary) !important;
	opacity: 0.9 !important;
}

[x-cloak] { display: none !important; }

.section {
	margin: 3rem 0;
}

.border-input {
	border-color: #dadfe5 !important;
}

.card-header {
	padding-top: 1rem;
	padding-bottom: 1rem;
}

.fs-100 {
	font-size: 100%;
}

.alert-success {
	color: #fff;
	background-color: var(--tblr-success) !important;
}
.alert-danger {
	color: #fff;
	background-color: var(--tblr-danger) !important;
}
.alert-warning {
	color: #fff;
	background-color: var(--tblr-warning) !important;
}
.alert-info {
	color: #fff;
	background-color: var(--tblr-info) !important;
}

.widget-title {
	color: inherit;
	margin-bottom: 0.5rem;
}

.widget-link {
	--tblr-text-opacity: 1;
	color: rgba(var(--tblr-muted-rgb), var(--tblr-text-opacity)) !important;
}
[data-bs-theme=dark] .widget-link {
	color: rgba(255, 255, 255, 0.5) !important;
}
.widget-link:hover {
	text-decoration: none;
	color: inherit !important;
}

.footer {
	color: inherit;
	background-color: var(--tblr-bg-surface);
}

ul {
	padding: 0;
	margin: 0;
	list-style: none;
}

.breadcrumb {
	background-color: var(--tblr-bg-surface);
	padding: 1rem 1.5rem;
	border-radius: 0.5rem;
	border: 1px solid var(--tblr-border-color) !important;
	margin-bottom: 0.75rem;
}
.breadcrumb-item a {
	color: inherit;
}
.breadcrumb-item.active {
	--tblr-text-opacity: 1;
	font-weight: normal;
	color: rgba(var(--tblr-muted-rgb), var(--tblr-text-opacity)) !important;
}
[data-bs-theme=dark] .breadcrumb-item.active {
	color: rgba(255, 255, 255, 0.5) !important;
}

.dropdown-item:hover,
.dropdown-item:focus,
.dropdown-item:active {
	color: var(--tblr-dropdown-link-active-color) !important;
	text-decoration: none;
	background-color: var(--tblr-dropdown-link-active-bg);
}
[data-bs-theme=dark] .dropdown-item.active, .dropdown-item:active,
[data-bs-theme=dark] .dropdown-item:hover {
	color: #fff !important;
}

[data-bs-theme=dark] .text-muted {
	color: rgba(255, 255, 255, 0.5) !important;
}

.btn-transparent {
	background-color: transparent;
	border-color: transparent !important;
	box-shadow: none;
	color: inherit;
}

@media (min-width: 768px) {
	.navbar-expand-md .nav-item:hover {
		position: relative;
	}
	.navbar-expand-md .nav-item:hover:not(.no-hover-border)::after {
		content: "";
		position: absolute;
		left: 0;
		right: 0;
		bottom: -.25rem;
		border: 0 var(--tblr-border-style) var(--tblr-navbar-active-border-color);
		border-bottom-width: 2px;
	}
}

.ti {
	font-size: 20px;
}

.page-center {
	justify-content: center;
}

.card-header .ck-content p:last-child,
.card-body .ck-content p:last-child {
	margin-bottom: 0;
}

.superWheel .sWheel-inner {
	background-color: #d2a100;
	border-radius: 100%;
}

.input-group.input-icon {
	margin-left: 1px;
}
.input-group.input-icon .input-icon-addon {
	z-index: 6;
}
.input-group.input-icon .form-control {
	height: calc(2.25rem + 2px);
}

.table a:not(.btn) {
	color: inherit;
}
.table a:hover {
	text-decoration: none;
}

.btn-group-sm>.btn, .btn-sm {
	--tblr-btn-line-height: 1.625;
	--tblr-btn-icon-size: 0.813rem;
}

tbody td {
	vertical-align: middle;
}

.btn-icon .ti {
	font-size: 1rem;
}

.bg-surface {
	background-color: var(--tblr-bg-surface);
}

.card-product .stock {
	position: absolute;
	top: -.75rem;
	left: -0.5rem;
	display: flex;
	justify-content: center;
	align-items: center;
	width: auto;
	height: auto;
	padding: .325rem .625rem;
	font-size: 90%;
	color: #ffffff;
	border-radius: .375rem;
	z-index: 2;
}
.card-product .stock.stock-sm {
	top: -0.5rem;
	left: -0.5rem;
	font-size: 85%;
	padding: .25rem .5rem;
}
.card-product .stock.have-stock {
	background-color: #fb6340;
}
.card-product .stock.stock-out {
	background-color: #f5365c;
}

.card-product .discount {
	position: absolute;
	top: -1.25rem;
	right: -0.75rem;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 3rem;
	height: 3rem;
	font-weight: 600;
	color: #ffffff;
	background-color: var(--tblr-primary);
	border-radius: 50%;
	z-index: 2;
}
.card-product .discount.discount-sm {
	width: 2.5rem;
	height: 2.5rem;
	font-size: 90%;
	font-weight: 600;
	top: -0.75rem;
	right: -0.5rem;
}


.card-product .price {
	font-size: 1.125rem;
	font-weight: 600;
}

.card-product .old-price {
	font-size: 80%;
	font-weight: 700;
	color: #f5365c;
	text-decoration: line-through;
}

.card-product {
	height: 100%;
}

.card-product .card-img-top {
	height: auto;
}

.card-product .card-body {
	display: flex;
	flex-direction: column;
	position: initial;
}

.border-bottom-separator > * {
	padding-top: .875rem;
	padding-bottom: .875rem;
	border-bottom: 1px solid var(--tblr-border-color) !important;
}
.border-bottom-separator > *:last-child {
	border-bottom: 0 !important;
}

.no-underline:hover {
	text-decoration: none;
}

.icon-sm {
	font-size: 1rem !important;
}

.card-img-right {
	border-radius: var(--tblr-card-border-radius) var(--tblr-card-border-radius) 0 0;
	object-fit: cover;
	object-position: center;
}

@media (min-width: 992px) {
	.home-slider .carousel-inner, .home-slider .carousel-item {
		height: 400px;
		overflow: hidden;
	}
	.home-slider .carousel-item img {
		height: 400px;
		object-fit: cover;
		overflow: hidden;
	}
}

/* BROADCAST */
.broadcast {
	width: 100%;
	height: 44px;
	background-color: var(--tblr-bg-surface);
	overflow: hidden;
	border-bottom: var(--tblr-border-width) var(--tblr-border-style) var(--tblr-border-color);
}
.broadcast-item {
	display: inline-block;
	padding: 10px 600px 10px 0;
}
@media (max-width: 768px) {
	.broadcast-item {
		padding-right: 400px;
	}
}
.broadcast-link {
	color: var(--tblr-body-color);
}

.shopping-cart-count-circle {
	width: 18px;
	height: 18px;
	text-align: center;
	justify-content: center;
	display: flex;
	align-items: center;
	border-radius: 50%;
	font-size: 80%;
	background-color: var(--tblr-primary);
	color: #fff;
}

/*NAV-TABS*/
.nav-tabs {
	margin-bottom: 0;
}
.nav-tabs .nav-link {
	display: block;
	text-align: center;
	padding: 1rem;
	font-weight: 500;
	color: var(--tblr-body-color);
	border: 0;
	border-radius: 0;
	border-bottom: 2px solid var(--tblr-border-color);
}

.nav-tabs .nav-link:hover {
	color: var(--tblr-primary);
	border-color: var(--tblr-border-color);
}

.nav-tabs .nav-link:first-child {
	border-top-left-radius: 10px;
}

.nav-tabs .nav-link:last-child {
	border-top-right-radius: 10px;
}

.nav-tabs .nav-link.active {
	border: 0;
	border-bottom: 2px solid var(--tblr-primary);
}
.nav-tabs .nav-item.show .nav-link,
.nav-tabs .nav-link.active {
	color: var(--tblr-primary);
	border-color: var(--tblr-primary);
	background-color: transparent;
}

.btn.disabled, .btn:disabled, fieldset:disabled .btn {
	--tblr-btn-disabled-border-color: var(--tblr-btn-disabled-bg);
}

@media (min-width: 768px) {
	.termsfeed-com---nb .cc-nb-main-container {
		padding: 2rem !important;
	}
	.termsfeed-com---nb-simple {
		bottom: 20px !important;
		right: 20px !important;
		border-radius: 0.625rem !important;
	}
}
.cc-cp-foot-byline {
	visibility: hidden;
}
.cc-pc-head-close:focus {
	border: none !important;
}
.termsfeed-com---palette-dark *:focus {
	box-shadow: none !important;
}
.cc-nb-okagree, .cc-cp-foot-save {
	color: #fff !important;
	background-color: var(--tblr-primary) !important;
}

.btn-link {
	color: rgba(var(--tblr-link-color-rgb),var(--tblr-link-opacity,1));
}

.btn-link:hover {
	color: rgba(var(--tblr-link-hover-color-rgb),var(--tblr-link-opacity,1));
}

.role__default {
	display: inline-block;
	justify-content: center;
	align-items: center;
	background: var(--tblr-bg-surface-secondary);
	overflow: hidden;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	min-width: 1.35714285em;
	font-size: 85%;
	font-weight: var(--tblr-font-weight-bold);
	letter-spacing: .04em;
	vertical-align: bottom;
	line-height: 1;
	padding: 0.25rem 0.5rem;
	text-align: center;
	white-space: nowrap;
	border-radius: 0.25rem;
}

.forum-online-users a:hover {
	text-decoration: none;
}
.forum-online-users a:not(:last-child)::after {
	margin-left: -3px;
	content: ",";
	font-size: 90%;
	color: rgb(var(--tblr-body-color-rgb)) !important;
}

.select2-container--bootstrap4 .select2-selection--single {
	height: calc(1.875em + .75rem + 2px) !important;
}

.select2-container--bootstrap4 .select2-selection--single .select2-selection__rendered {
	line-height: calc(1.875em + .75rem);
}

.select2-container .select2-selection--single .select2-selection__rendered {
	padding-left: 12px;
}

.select2-container--bootstrap4 .select2-selection {
	background-color: var(--tblr-bg-forms);
	border-color: var(--tblr-border-color);
}

.select2-results__option {
	background-color: var(--tblr-bg-forms);
}

.select2-container--bootstrap4 .select2-dropdown {
	border-color: var(--tblr-border-color);
}

/* ckeditor */
.ck-editor__editable {
	min-height: 150px !important;
}
[data-bs-theme=dark] .ck-editor .ck-content {
	background: var(--tblr-bg-surface) !important;
	border-color: var(--tblr-border-color-translucent) !important;
}
[data-bs-theme=dark] .card .ck-editor .ck-content {
	background: var(--tblr-bg-forms) !important;
	border-color: var(--tblr-bg-forms) !important;
}
[data-bs-theme=dark] .ck-editor .ck-toolbar {
	background: #171a21 !important;
	border-color: #171a21 !important;
}
[data-bs-theme=dark] .ck-editor .ck-toolbar__items * {
	color: #FFF !important;
}
[data-bs-theme=dark] .ck-editor .ck-button:hover {
	background: #111111 !important;
}
[data-bs-theme=dark] .ck-editor .ck-button:focus {
	background: #111111 !important;
}
[data-bs-theme=dark] .ck-editor .ck-list__item {
	background: #171a21 !important;
	border-color: #171a21 !important;
}
.ck-editor.ck-toolbar {
	border: 1px solid #efefef !important;
}

.header-banner{
	position: relative;
	overflow: hidden;
}

.header-image {
	width: 100%;
	position: relative;
	overflow: hidden;
	height: 255px;
}

.header-image img {
	width: 100%;
	height: 100%;
	object-position: center;
	object-fit: cover;
}

.header-banner-content {
	display: flex;
	justify-content: center;
	align-items: center;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	width: 100%;
	padding: 1.5rem;
	color: #fff;
	font-weight: 600;
}

@media (max-width: 768px) {
	.header-banner-content {
		width: 100%;
		justify-content: center;
	}
}
.zoom-hover {
	transition: transform .3s;
	transform: scale(1.0);
}
.zoom-hover:hover {
	transform: scale(1.1);
}
.header-banner-logo {
	max-height: 150px;
}
.header-side-icon {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 50px;
	height: 50px;
	background-color: rgba(255, 255, 255, 0.2);
	border-radius: 0.5rem;
	color: #fff;
}
.header-side-icon svg {
	fill: white;
	width: 30px;
	height: 30px;
}

#powered_by_leaderos {
	color: var(--body-color);
}

[data-bs-theme=dark] .navbar-brand-autodark .navbar-brand-image {
	filter: none !important;
}
.auth-logo {
	max-height: 100px;
}
.auth-layout #powered_by_leaderos {
	opacity: 0.75;
}
[data-bs-theme=dark] .auth-layout #powered_by_leaderos {
	opacity: 0.5;
}
.toggle-password {
	line-height: 1;
}

.user-data {
	display: flex;
	align-items: center;
	padding: 8px;
}

.user-data:nth-child(2n) {
	border-right: none !important;
}

.user-data:last-child {
	border-bottom: none;
}

/* Mobile */
@media (max-width: 768px) {
	.user-data {
		border-right: none !important;
	}
}

.sidebar-profile-card .sidebar-link {
	display: flex;
	align-items: center;
	padding: 0.5rem 1.5rem;
	color: var(--body-color);
	text-decoration: none !important;
}
.sidebar-profile-card .sidebar-link:hover,
.sidebar-profile-card .sidebar-link.active {
	background-color: rgb(var(--tblr-body-bg-rgb));
}
.avatar-150px {
	width: 150px;
	height: 150px;
}
/* Epiklava Flat Rework: Leaf ranking/news/footer ideas adapted to Flat/Tabler */
:root {
	--flat-accent: #f59e0b;
	--flat-accent-dark: #d97706;
	--flat-accent-soft: #fff7ed;
	--flat-accent-border: rgba(245, 158, 11, .22);
	--flat-dark: #111827;
	--flat-muted: #6b7280;
	--flat-border: rgba(17, 24, 39, .08);
	--flat-card-shadow: 0 18px 46px rgba(154, 52, 18, .10);
}

.flat-section-heading {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 1rem;
}
.flat-section-heading span {
	display: inline-flex;
	align-items: center;
	gap: .5rem;
	font-size: .75rem;
	font-weight: 850;
	letter-spacing: .06em;
	text-transform: uppercase;
	color: var(--flat-accent-dark);
	background: var(--flat-accent-soft);
	border: 1px solid var(--flat-accent-border);
	border-radius: 999px;
	padding: .45rem .75rem;
}
.flat-section-heading h2 {
	font-size: clamp(1.85rem, 3vw, 2.75rem);
	line-height: 1.04;
	font-weight: 900;
	letter-spacing: -.04em;
	margin: .65rem 0 .35rem;
	color: var(--flat-dark);
}
.flat-section-heading p {
	margin: 0;
	color: var(--flat-muted);
	font-weight: 600;
}

.flat-ranking-showcase {
	position: relative;
	isolation: isolate;
	overflow: hidden;
	margin: 0 0 2.5rem;
	padding: 1.6rem;
	border-radius: 1.5rem;
	border: 1px solid var(--flat-accent-border);
	background:
		radial-gradient(circle at 12% 12%, rgba(251, 146, 60, .24), transparent 18rem),
		radial-gradient(circle at 88% 0%, rgba(255, 207, 90, .20), transparent 18rem),
		linear-gradient(135deg, rgba(255, 255, 255, .96), rgba(255, 247, 237, .92));
	box-shadow: var(--flat-card-shadow);
}
.flat-ranking-showcase::after {
	content: "";
	position: absolute;
	right: -4.5rem;
	bottom: -5.5rem;
	width: 16rem;
	height: 16rem;
	border-radius: 2.25rem;
	background: linear-gradient(135deg, rgba(245, 158, 11, .16), rgba(255, 255, 255, .04));
	transform: rotate(18deg);
	z-index: -1;
}
.flat-ranking-head {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 1rem;
	margin-bottom: 1.25rem;
}
.flat-ranking-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: .5rem;
	border-radius: 999px;
	padding: .5rem .8rem;
	background: rgba(245, 158, 11, .11);
	border: 1px solid var(--flat-accent-border);
	color: var(--flat-accent-dark);
	font-size: .75rem;
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: .06em;
}
.flat-ranking-head h2 {
	margin: .7rem 0 .45rem;
	font-size: clamp(1.85rem, 3.2vw, 2.85rem);
	line-height: 1;
	font-weight: 950;
	letter-spacing: -.045em;
	color: var(--flat-dark);
}
.flat-ranking-head p {
	max-width: 46rem;
	margin: 0;
	color: var(--flat-muted);
	font-weight: 600;
}
.flat-ranking-cta {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: .55rem;
	min-height: 2.9rem;
	padding: 0 1.05rem;
	border-radius: .95rem;
	background: linear-gradient(135deg, var(--flat-accent), var(--flat-accent-dark));
	box-shadow: 0 14px 28px rgba(245, 158, 11, .24);
	color: #fff !important;
	font-weight: 900;
	white-space: nowrap;
	text-decoration: none !important;
}
.flat-ranking-cta:hover { transform: translateY(-1px); opacity: .94; }

.flat-podium-grid {
	display: grid;
	grid-template-columns: 1fr 1.18fr 1fr;
	align-items: end;
	gap: 1rem;
	margin-top: .75rem;
}
.flat-podium-card {
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: center;
	min-height: 19rem;
	padding: 1rem;
	border-radius: 1.35rem;
	border: 1px solid rgba(245, 158, 11, .24);
	background: linear-gradient(180deg, rgba(255, 255, 255, .95), rgba(255, 247, 237, .9));
	box-shadow: 0 16px 36px rgba(154, 52, 18, .11);
	text-decoration: none !important;
	color: var(--flat-dark) !important;
	transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
	overflow: hidden;
}
.flat-podium-card:hover {
	transform: translateY(-5px);
	border-color: rgba(245, 158, 11, .44);
	box-shadow: 0 24px 56px rgba(154, 52, 18, .17);
}
.flat-rank-1 {
	min-height: 21rem;
	background: linear-gradient(180deg, #fff8d7, #ffffff 44%, #fff7ed);
	border-color: rgba(245, 158, 11, .38);
}
.flat-rank-badge,
.flat-rank-crown {
	position: absolute;
	top: .9rem;
	z-index: 2;
}
.flat-rank-badge {
	left: .9rem;
	padding: .35rem .55rem;
	border-radius: .7rem;
	background: #fff;
	border: 1px solid var(--flat-accent-border);
	font-weight: 950;
	color: var(--flat-accent-dark);
}
.flat-rank-crown {
	right: .9rem;
	display: grid;
	place-items: center;
	width: 2.25rem;
	height: 2.25rem;
	border-radius: .85rem;
	background: linear-gradient(135deg, var(--flat-accent), var(--flat-accent-dark));
	color: #fff;
	box-shadow: 0 10px 20px rgba(245, 158, 11, .28);
}
.flat-skin-wrap {
	display: flex;
	align-items: flex-end;
	justify-content: center;
	min-height: 10.5rem;
	width: 100%;
	padding-top: 2.25rem;
}
.flat-skin-wrap img {
	max-height: 10.5rem;
	width: auto;
	image-rendering: auto;
	filter: drop-shadow(0 16px 18px rgba(124, 45, 18, .16));
}
.flat-podium-info {
	width: 100%;
	margin-top: auto;
	padding: .9rem;
	border-radius: 1rem;
	background: rgba(255, 255, 255, .75);
	border: 1px solid rgba(245, 158, 11, .14);
	text-align: center;
}
.flat-podium-info strong {
	display: block;
	font-size: 1.1rem;
	font-weight: 950;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}
.flat-podium-info span {
	display: inline-flex;
	margin-top: .45rem;
	padding: .4rem .7rem;
	border-radius: 999px;
	background: rgba(245, 158, 11, .12);
	color: var(--flat-accent-dark);
	font-weight: 950;
}
.flat-podium-info small {
	display: block;
	margin-top: .35rem;
	color: #8a4b2b;
	font-weight: 750;
}
.flat-ranking-lower {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 1rem;
	margin-top: 1rem;
}
.flat-monthly-top5,
.flat-activity-panel,
.flat-sidebar-card {
	padding: 1rem;
	border-radius: 1.25rem;
	background: rgba(255, 255, 255, .78);
	border: 1px solid rgba(245, 158, 11, .16);
	box-shadow: 0 12px 28px rgba(154, 52, 18, .08);
}
.flat-sidebar-card { margin-bottom: 1rem; }
.flat-mini-head span {
	display: inline-flex;
	align-items: center;
	gap: .5rem;
	font-weight: 950;
	color: var(--flat-dark);
}
.flat-mini-head span i { color: var(--flat-accent-dark); }
.flat-mini-head p {
	margin: .35rem 0 .8rem;
	font-size: .875rem;
	color: var(--flat-muted);
	font-weight: 600;
}
.flat-monthly-list,
.flat-activity-list {
	display: grid;
	gap: .65rem;
}
.flat-monthly-row,
.flat-activity-row {
	display: grid;
	grid-template-columns: auto auto 1fr auto;
	align-items: center;
	gap: .7rem;
	padding: .68rem;
	border-radius: 1rem;
	background: #fff;
	border: 1px solid rgba(245, 158, 11, .14);
	color: inherit !important;
	text-decoration: none !important;
	transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}
.flat-activity-row { grid-template-columns: auto 1fr auto; }
.flat-monthly-row:hover,
.flat-activity-row:hover {
	transform: translateY(-2px);
	border-color: rgba(245, 158, 11, .34);
	box-shadow: 0 12px 24px rgba(154, 52, 18, .09);
}
.flat-monthly-row-1 {
	background: linear-gradient(135deg, #fff8d7, #fff);
	border-color: rgba(245, 158, 11, .32);
}
.flat-monthly-place {
	display: grid;
	place-items: center;
	width: 2.25rem;
	height: 2.25rem;
	border-radius: .75rem;
	background: var(--flat-accent-soft);
	color: var(--flat-accent-dark);
	font-weight: 950;
}
.flat-monthly-avatar {
	position: relative;
	display: inline-flex;
}
.flat-monthly-avatar img,
.flat-activity-row img {
	width: 2.625rem;
	height: 2.625rem;
	border-radius: .8rem;
	object-fit: cover;
	border: 2px solid #fff;
	box-shadow: 0 8px 18px rgba(124, 45, 18, .14);
}
.flat-monthly-avatar i {
	position: absolute;
	top: -.45rem;
	right: -.45rem;
	display: grid;
	place-items: center;
	width: 1.25rem;
	height: 1.25rem;
	border-radius: 999px;
	background: var(--flat-accent);
	color: #fff;
	font-size: .65rem;
}
.flat-monthly-copy,
.flat-activity-row span {
	min-width: 0;
}
.flat-monthly-copy strong,
.flat-activity-row strong {
	display: block;
	font-weight: 900;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}
.flat-monthly-copy small,
.flat-activity-row small {
	display: block;
	color: var(--flat-muted);
	font-size: .78rem;
	font-weight: 650;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}
.flat-monthly-row b,
.flat-activity-row b {
	color: var(--flat-accent-dark);
	font-weight: 950;
	white-space: nowrap;
}
.flat-empty-state {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: .35rem;
	min-height: 9rem;
	padding: 1rem;
	border-radius: 1.25rem;
	background: rgba(255, 255, 255, .72);
	border: 1px dashed rgba(245, 158, 11, .32);
	color: var(--flat-muted);
	text-align: center;
	font-weight: 700;
}
.flat-empty-state i {
	font-size: 1.65rem;
	color: var(--flat-accent-dark);
}
.flat-empty-state strong {
	color: var(--flat-dark);
	font-weight: 950;
}
.flat-empty-state-sm {
	min-height: 5.5rem;
	font-size: .875rem;
}

.flat-news-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1rem;
}
.flat-news-grid-home {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}
.col-md-12 .flat-news-grid-home,
.flat-news-grid-blog {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}
.flat-news-card {
	display: flex;
	flex-direction: column;
	min-width: 0;
	min-height: 100%;
	border-radius: 1.25rem;
	background: #fff;
	border: 1px solid var(--flat-border);
	box-shadow: 0 12px 28px rgba(17, 24, 39, .06);
	overflow: hidden;
	transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}
.flat-news-card:hover {
	transform: translateY(-4px);
	border-color: rgba(245, 158, 11, .34);
	box-shadow: 0 20px 46px rgba(154, 52, 18, .12);
}
.flat-news-media {
	position: relative;
	display: block;
	aspect-ratio: 16 / 9;
	background: var(--flat-accent-soft);
	overflow: hidden;
}
.flat-news-media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform .28s ease;
}
.flat-news-card:hover .flat-news-media img { transform: scale(1.045); }
.flat-news-glow {
	position: absolute;
	inset: auto 0 0;
	height: 44%;
	background: linear-gradient(180deg, transparent, rgba(17, 24, 39, .45));
	pointer-events: none;
}
.flat-news-body {
	display: flex;
	flex-direction: column;
	gap: .7rem;
	flex: 1;
	padding: 1rem;
}
.flat-news-meta {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: .45rem .7rem;
	font-size: .78rem;
	font-weight: 800;
}
.flat-news-category,
.flat-news-date,
.flat-news-stat {
	display: inline-flex;
	align-items: center;
	gap: .35rem;
	color: var(--flat-accent-dark) !important;
	text-decoration: none !important;
}
.flat-news-category {
	padding: .28rem .55rem;
	border-radius: 999px;
	background: var(--flat-accent-soft);
	border: 1px solid rgba(245, 158, 11, .16);
}
.flat-news-title {
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	overflow: hidden;
	min-height: 2.7rem;
	font-size: 1.15rem;
	line-height: 1.18;
	font-weight: 950;
	letter-spacing: -.02em;
	color: var(--flat-dark) !important;
	text-decoration: none !important;
}
.flat-news-title:hover { color: var(--flat-accent-dark) !important; }
.flat-news-excerpt {
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
	overflow: hidden;
	margin: 0;
	color: var(--flat-muted);
	font-weight: 550;
	line-height: 1.58;
}
.flat-news-footer {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: .75rem;
	margin-top: auto;
	padding-top: .75rem;
	border-top: 1px solid var(--flat-border);
}
.flat-news-read {
	display: inline-flex;
	align-items: center;
	gap: .4rem;
	padding: .45rem .7rem;
	border-radius: .75rem;
	background: linear-gradient(135deg, var(--flat-accent), var(--flat-accent-dark));
	color: #fff !important;
	font-size: .82rem;
	font-weight: 900;
	text-decoration: none !important;
	white-space: nowrap;
}
.flat-news-read:hover { opacity: .92; }

.flat-footer {
	position: relative;
	overflow: hidden;
	background: linear-gradient(180deg, #ffffff, var(--flat-accent-soft));
	border-top: 1px solid var(--flat-accent-border);
	box-shadow: 0 -12px 32px rgba(154, 52, 18, .07);
}
.flat-footer-top,
.flat-footer-middle,
.flat-footer-tools {
	position: relative;
	display: grid;
	gap: 1rem;
	padding: 1rem;
	border-radius: 1.25rem;
	background: rgba(255, 255, 255, .76);
	border: 1px solid rgba(245, 158, 11, .15);
	box-shadow: 0 12px 28px rgba(154, 52, 18, .06);
}
.flat-footer-top {
	grid-template-columns: minmax(0, 1fr) auto;
	align-items: stretch;
}
.flat-footer-middle {
	grid-template-columns: 18rem minmax(0, 1fr);
	margin-top: 1rem;
}
.flat-footer-tools {
	margin-top: 1rem;
	box-shadow: none;
}
.flat-footer-brand {
	display: grid;
	grid-template-columns: auto 1fr;
	gap: 1rem;
	min-width: 0;
}
.flat-footer-brand-icon,
.flat-footer-action-icon {
	display: grid;
	place-items: center;
	width: 3rem;
	height: 3rem;
	border-radius: 1rem;
	background: linear-gradient(135deg, var(--flat-accent), var(--flat-accent-dark));
	color: #fff;
	box-shadow: 0 12px 24px rgba(245, 158, 11, .24);
}
.flat-footer-brand-content span,
.flat-footer-small-title {
	display: inline-flex;
	font-size: .75rem;
	font-weight: 900;
	letter-spacing: .06em;
	text-transform: uppercase;
	color: var(--flat-accent-dark);
}
.flat-footer-brand-content h3 {
	margin: .35rem 0 .45rem;
	font-size: 1.45rem;
	font-weight: 950;
	letter-spacing: -.03em;
	color: var(--flat-dark);
}
.flat-footer-brand-content .ck-content {
	color: var(--flat-muted);
	font-weight: 550;
}
.flat-footer-brand-content .ck-content p:last-child { margin-bottom: 0; }
.flat-footer-actions {
	display: grid;
	grid-template-columns: 1fr;
	gap: .75rem;
	min-width: min(21rem, 100%);
}
.flat-footer-action-card {
	display: grid;
	grid-template-columns: auto 1fr;
	align-items: center;
	gap: .8rem;
	width: 100%;
	min-height: 4.25rem;
	padding: .75rem;
	border: 1px solid rgba(245, 158, 11, .18);
	border-radius: 1rem;
	background: #fff;
	color: inherit !important;
	text-align: left;
	text-decoration: none !important;
	box-shadow: 0 10px 22px rgba(154, 52, 18, .07);
	transition: transform .18s ease, border-color .18s ease;
}
button.flat-footer-action-card { cursor: pointer; }
.flat-footer-action-card:hover {
	transform: translateY(-2px);
	border-color: rgba(245, 158, 11, .34);
}
.flat-footer-action-card strong {
	display: block;
	font-weight: 950;
	color: var(--flat-dark);
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}
.flat-footer-action-card small {
	display: block;
	color: var(--flat-muted);
	font-weight: 650;
}
.flat-footer-social {
	padding: 1rem;
	border-radius: 1rem;
	background: #fff;
	border: 1px solid rgba(245, 158, 11, .14);
}
.flat-footer-social-icons {
	display: flex;
	flex-wrap: wrap;
	gap: .55rem;
	margin-top: .75rem;
}
.flat-footer-social-icons a {
	display: grid;
	place-items: center;
	width: 2.5rem;
	height: 2.5rem;
	border-radius: .85rem;
	background: var(--flat-accent-soft);
	border: 1px solid rgba(245, 158, 11, .16);
	color: var(--flat-accent-dark) !important;
	text-decoration: none !important;
	transition: transform .18s ease, background .18s ease, color .18s ease;
}
.flat-footer-social-icons a:hover {
	transform: translateY(-2px);
	background: var(--flat-accent);
	color: #fff !important;
}
.flat-footer-links {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: .75rem;
}
.flat-footer-link-group {
	padding: 1rem;
	border-radius: 1rem;
	background: #fff;
	border: 1px solid rgba(245, 158, 11, .14);
}
.flat-footer-link-group h4 {
	margin: 0 0 .75rem;
	font-size: .98rem;
	font-weight: 950;
	color: var(--flat-dark);
}
.flat-footer-link-group a {
	display: flex;
	align-items: center;
	gap: .55rem;
	padding: .4rem 0;
	color: var(--flat-muted) !important;
	font-weight: 650;
	text-decoration: none !important;
}
.flat-footer-link-group a:hover { color: var(--flat-accent-dark) !important; }
.flat-footer-link-group a i {
	width: 1.15rem;
	color: var(--flat-accent-dark);
}
.flat-footer-bar {
	margin-top: 1.25rem;
	padding: .85rem 0;
	border-top: 1px solid rgba(245, 158, 11, .16);
	background: rgba(255, 247, 237, .88);
	color: #7c2d12;
}
.flat-footer-bar-inner {
	display: grid;
	grid-template-columns: 1fr auto 1fr;
	align-items: center;
	gap: 1rem;
}
.flat-footer-studio {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: .45rem;
	padding: .55rem .85rem;
	border-radius: 999px;
	background: #fff;
	border: 1px solid rgba(245, 158, 11, .20);
	box-shadow: 0 8px 18px rgba(154, 52, 18, .08);
	font-weight: 950;
}
.flat-footer-powered { text-align: right; }
.flat-footer-powered a,
.flat-footer-bar a {
	color: inherit !important;
	text-decoration: underline;
	text-underline-offset: 3px;
}

[data-bs-theme=dark] .flat-section-heading h2,
[data-bs-theme=dark] .flat-ranking-head h2,
[data-bs-theme=dark] .flat-podium-card,
[data-bs-theme=dark] .flat-podium-info strong,
[data-bs-theme=dark] .flat-mini-head span,
[data-bs-theme=dark] .flat-monthly-copy strong,
[data-bs-theme=dark] .flat-activity-row strong,
[data-bs-theme=dark] .flat-empty-state strong,
[data-bs-theme=dark] .flat-news-title,
[data-bs-theme=dark] .flat-footer-brand-content h3,
[data-bs-theme=dark] .flat-footer-action-card strong,
[data-bs-theme=dark] .flat-footer-link-group h4 {
	color: #fff !important;
}
[data-bs-theme=dark] .flat-ranking-showcase,
[data-bs-theme=dark] .flat-footer {
	background:
		radial-gradient(circle at 12% 12%, rgba(245, 158, 11, .14), transparent 18rem),
		linear-gradient(180deg, #151922, #0f131b) !important;
	border-color: rgba(245, 158, 11, .18);
}
[data-bs-theme=dark] .flat-podium-card,
[data-bs-theme=dark] .flat-monthly-top5,
[data-bs-theme=dark] .flat-activity-panel,
[data-bs-theme=dark] .flat-sidebar-card,
[data-bs-theme=dark] .flat-news-card,
[data-bs-theme=dark] .flat-footer-top,
[data-bs-theme=dark] .flat-footer-middle,
[data-bs-theme=dark] .flat-footer-tools,
[data-bs-theme=dark] .flat-footer-social,
[data-bs-theme=dark] .flat-footer-link-group,
[data-bs-theme=dark] .flat-footer-action-card,
[data-bs-theme=dark] .flat-monthly-row,
[data-bs-theme=dark] .flat-activity-row,
[data-bs-theme=dark] .flat-podium-info,
[data-bs-theme=dark] .flat-empty-state {
	background: rgba(31, 41, 55, .78) !important;
	border-color: rgba(245, 158, 11, .14) !important;
}
[data-bs-theme=dark] .flat-section-heading p,
[data-bs-theme=dark] .flat-ranking-head p,
[data-bs-theme=dark] .flat-mini-head p,
[data-bs-theme=dark] .flat-news-excerpt,
[data-bs-theme=dark] .flat-footer-brand-content .ck-content,
[data-bs-theme=dark] .flat-footer-action-card small,
[data-bs-theme=dark] .flat-footer-link-group a,
[data-bs-theme=dark] .flat-monthly-copy small,
[data-bs-theme=dark] .flat-activity-row small {
	color: rgba(255, 255, 255, .62) !important;
}
[data-bs-theme=dark] .flat-footer-bar {
	background: #111827;
	color: rgba(255, 247, 237, .88);
	border-color: rgba(245, 158, 11, .16);
}
[data-bs-theme=dark] .flat-footer-studio { background: rgba(31, 41, 55, .9); }

@media (max-width: 1199.98px) {
	.flat-news-grid,
	.flat-news-grid-home,
	.col-md-12 .flat-news-grid-home,
	.flat-news-grid-blog,
	.flat-footer-links { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.flat-footer-middle { grid-template-columns: 1fr; }
}
@media (max-width: 991.98px) {
	.flat-ranking-head,
	.flat-footer-top { grid-template-columns: 1fr; }
	.flat-ranking-head { align-items: flex-start; flex-direction: column; }
	.flat-ranking-cta { width: 100%; }
	.flat-podium-grid,
	.flat-ranking-lower { grid-template-columns: 1fr; }
	.flat-podium-card,
	.flat-rank-1 {
		min-height: 0;
		display: grid;
		grid-template-columns: auto 1fr;
		align-items: center;
		text-align: left;
	}
	.flat-skin-wrap { width: 6rem; min-height: 6rem; padding-top: 0; }
	.flat-skin-wrap img { max-height: 6rem; }
	.flat-podium-info { margin-top: 0; text-align: left; }
	.flat-footer-actions { min-width: 0; }
}
@media (max-width: 767.98px) {
	.flat-ranking-showcase { padding: 1rem; border-radius: 1.15rem; }
	.flat-section-heading { align-items: flex-start; flex-direction: column; }
	.flat-news-grid,
	.flat-news-grid-home,
	.col-md-12 .flat-news-grid-home,
	.flat-news-grid-blog,
	.flat-footer-links { grid-template-columns: 1fr; }
	.flat-monthly-row { grid-template-columns: auto 1fr auto; }
	.flat-monthly-avatar { display: none; }
	.flat-footer-bar-inner { grid-template-columns: 1fr; text-align: center; }
	.flat-footer-powered { text-align: center; }
}
@media (max-width: 420px) {
	.flat-monthly-row,
	.flat-activity-row { grid-template-columns: auto 1fr; }
	.flat-monthly-row b,
	.flat-activity-row b { grid-column: 2; justify-self: start; }
	.flat-news-footer { align-items: flex-start; flex-direction: column; }
	.flat-news-read { width: 100%; justify-content: center; }
}

/* =========================================================
   Flat full-site Epiklava rework v2
   Kapsam: genel sayfa, mağaza, kredi, auth, account, forum,
   ticket, blog, tablo, form, empty-state, mobile, dark mode.
   ========================================================= */
:root {
	--flat-accent: #f59e0b;
	--flat-accent-dark: #d97706;
	--flat-accent-soft: #fff7ed;
	--flat-dark: #111827;
	--flat-muted: #6b7280;
	--flat-border: rgba(17, 24, 39, .08);
	--flat-card-radius: 18px;
	--flat-card-shadow: 0 18px 45px rgba(15, 23, 42, .08);
	--flat-card-shadow-hover: 0 24px 58px rgba(154, 52, 18, .13);
	--flat-soft-bg: #fffaf2;
}

body.flat-theme {
	font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	background:
		radial-gradient(circle at 12% 0%, rgba(245, 158, 11, .10), transparent 22rem),
		linear-gradient(180deg, #fffaf2 0%, #f8fafc 46%, #fff 100%);
	color: var(--flat-dark);
}

.flat-theme .page-wrapper {
	background:
		radial-gradient(circle at 90% 10%, rgba(251, 191, 36, .09), transparent 18rem),
		linear-gradient(180deg, rgba(255, 250, 242, .82), rgba(248, 250, 252, .95));
}

.flat-main-shell {
	position: relative;
	z-index: 1;
	min-height: 60vh;
}

.flat-main-shell > .section,
.flat-main-shell .section.flat-page {
	padding: 2.1rem 0 2.65rem;
}

.flat-main-shell .container,
.flat-main-shell .container-xl {
	position: relative;
}

.flat-page .page-title,
.flat-page h1.page-title,
.flat-page h2.page-title {
	position: relative;
	font-weight: 950;
	letter-spacing: -.035em;
	color: var(--flat-dark);
	margin-bottom: 1.2rem !important;
}
.flat-page .page-title::after {
	content: "";
	display: block;
	width: 64px;
	height: 4px;
	border-radius: 999px;
	margin-top: .65rem;
	background: linear-gradient(90deg, var(--flat-accent), var(--flat-accent-dark));
}

.flat-page-hero {
	display: flex;
	align-items: center;
	gap: 1rem;
	padding: 1.15rem 1.25rem;
	margin: 0 0 1.25rem;
	border-radius: var(--flat-card-radius);
	background:
		radial-gradient(circle at 10% 10%, rgba(245, 158, 11, .16), transparent 12rem),
		linear-gradient(135deg, #fff, var(--flat-accent-soft));
	border: 1px solid rgba(245, 158, 11, .16);
	box-shadow: 0 14px 34px rgba(154, 52, 18, .06);
}
.flat-page-hero-icon,
.flat-empty-icon {
	display: grid;
	place-items: center;
	width: 3rem;
	height: 3rem;
	min-width: 3rem;
	border-radius: 1rem;
	background: var(--flat-accent);
	color: #fff;
	box-shadow: 0 12px 24px rgba(245, 158, 11, .25);
}
.flat-page-hero h1 {
	margin: 0;
	font-weight: 950;
	letter-spacing: -.035em;
	color: var(--flat-dark);
}
.flat-page-hero p { margin: .18rem 0 0; color: var(--flat-muted); font-weight: 600; }

.flat-main-shell .card,
.flat-auth-shell .card,
.flat-error-shell .card,
.flat-main-shell .modal-content {
	border: 1px solid rgba(17, 24, 39, .075);
	border-radius: var(--flat-card-radius);
	box-shadow: var(--flat-card-shadow);
	overflow: hidden;
}
.flat-main-shell .card-hover,
.flat-main-shell a.card,
.flat-main-shell .card-product,
.flat-main-shell .flat-click-card {
	transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
	text-decoration: none !important;
}
.flat-main-shell .card-hover:hover,
.flat-main-shell a.card:hover,
.flat-main-shell .card-product:hover,
.flat-main-shell .flat-click-card:hover {
	transform: translateY(-4px);
	box-shadow: var(--flat-card-shadow-hover);
	border-color: rgba(245, 158, 11, .24);
}
.flat-main-shell .card-header {
	background: linear-gradient(180deg, #fff, #fff7ed);
	border-bottom: 1px solid rgba(245, 158, 11, .14);
	padding: 1rem 1.15rem;
}
.flat-main-shell .card-title {
	font-weight: 900;
	letter-spacing: -.02em;
	color: var(--flat-dark);
}
.flat-main-shell .card-body { position: relative; }
.flat-main-shell a { text-underline-offset: 3px; }

.flat-breadcrumb-wrap {
	margin-bottom: 1rem;
}
.flat-breadcrumb {
	display: flex;
	align-items: center;
	gap: .35rem;
	padding: .75rem .9rem;
	margin: 0;
	border-radius: 999px;
	background: rgba(255, 255, 255, .82);
	border: 1px solid rgba(245, 158, 11, .14);
	box-shadow: 0 10px 26px rgba(154, 52, 18, .05);
	width: fit-content;
	max-width: 100%;
}
.flat-breadcrumb .breadcrumb-item,
.flat-breadcrumb .breadcrumb-item a {
	display: inline-flex;
	align-items: center;
	gap: .38rem;
	font-weight: 700;
	font-size: .86rem;
	color: var(--flat-muted);
	text-decoration: none !important;
}
.flat-breadcrumb .breadcrumb-item a:hover,
.flat-breadcrumb .breadcrumb-item.active { color: var(--flat-accent-dark); }
.flat-breadcrumb .breadcrumb-item + .breadcrumb-item::before {
	content: "/";
	color: rgba(217, 119, 6, .5);
	font-weight: 900;
}

.flat-soft-alert {
	display: flex;
	align-items: flex-start;
	gap: .75rem;
	border: 0 !important;
	border-radius: 1rem;
	padding: 1rem 1.1rem;
	font-weight: 650;
	box-shadow: 0 12px 28px rgba(15, 23, 42, .06);
}
.flat-soft-alert i { font-size: 1.25rem; margin-top: .05rem; }
.flat-soft-alert-danger { background: #fff1f2 !important; color: #9f1239 !important; }
.flat-soft-alert-warning { background: #fffbeb !important; color: #92400e !important; }
.flat-soft-alert-info { background: #eff6ff !important; color: #1e40af !important; }
.flat-soft-alert-success { background: #fff7ed !important; color: #9a3412 !important; }

.flat-empty-state,
.flat-main-shell .empty,
.flat-main-shell .alert:only-child {
	border-radius: var(--flat-card-radius);
	background:
		radial-gradient(circle at 15% 15%, rgba(245, 158, 11, .12), transparent 14rem),
		#fff;
	border: 1px dashed rgba(245, 158, 11, .28);
	box-shadow: 0 14px 32px rgba(154, 52, 18, .06);
	padding: 2rem;
	text-align: center;
}
.flat-empty-state {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: .6rem;
	min-height: 160px;
}
.flat-empty-state > i:not(.ti) {
	font-size: 2rem;
	color: var(--flat-accent-dark);
}
.flat-empty-state strong {
	font-size: 1.15rem;
	font-weight: 950;
	color: var(--flat-dark);
}
.flat-empty-state span,
.flat-empty-state p { color: var(--flat-muted); margin: 0; font-weight: 600; }
.flat-empty-state-sm { min-height: 0; padding: 1rem; }

.flat-main-shell .btn-primary,
.flat-auth-shell .btn-primary,
.flat-error-shell .btn-primary,
.flat-ranking-cta,
.flat-news-read {
	background: linear-gradient(135deg, var(--flat-accent), var(--flat-accent-dark)) !important;
	border-color: transparent !important;
	color: #fff !important;
	box-shadow: 0 12px 24px rgba(245, 158, 11, .22);
	font-weight: 850;
}
.flat-main-shell .btn-primary:hover,
.flat-auth-shell .btn-primary:hover,
.flat-error-shell .btn-primary:hover {
	filter: saturate(1.04) brightness(.98);
	transform: translateY(-1px);
}
.flat-main-shell .btn-light,
.flat-main-shell .btn-outline-primary,
.flat-auth-shell .btn-light {
	border-color: rgba(245, 158, 11, .18) !important;
	background: #fff !important;
	color: var(--flat-accent-dark) !important;
	font-weight: 800;
}
.flat-main-shell .btn-danger { font-weight: 850; }
.flat-main-shell .badge,
.flat-main-shell .tag,
.flat-main-shell .role__default {
	border-radius: 999px;
}

.flat-main-shell .form-control,
.flat-main-shell .form-select,
.flat-main-shell .input-group-text,
.flat-auth-shell .form-control,
.flat-auth-shell .form-select,
.flat-auth-shell .input-group-text,
.flat-main-shell .select2-container--bootstrap4 .select2-selection {
	border-radius: .9rem;
	border-color: rgba(17, 24, 39, .10);
	box-shadow: none !important;
}
.flat-main-shell .input-group .form-control:not(:last-child),
.flat-auth-shell .input-group .form-control:not(:last-child) {
	border-top-right-radius: 0;
	border-bottom-right-radius: 0;
}
.flat-main-shell .input-group .input-group-text,
.flat-auth-shell .input-group .input-group-text {
	border-top-left-radius: 0;
	border-bottom-left-radius: 0;
}
.flat-main-shell .form-control:focus,
.flat-main-shell .form-select:focus,
.flat-auth-shell .form-control:focus,
.flat-auth-shell .form-select:focus {
	border-color: rgba(245, 158, 11, .55);
	box-shadow: 0 0 0 .18rem rgba(245, 158, 11, .12) !important;
}
.flat-main-shell .form-label,
.flat-auth-shell .form-label {
	font-weight: 800;
	color: var(--flat-dark);
}

.flat-main-shell .table-responsive {
	border-radius: var(--flat-card-radius);
	border: 1px solid rgba(17, 24, 39, .075);
	box-shadow: 0 14px 34px rgba(15, 23, 42, .055);
	background: #fff;
}
.flat-main-shell .card .table-responsive {
	border: 0;
	box-shadow: none;
	border-radius: 0 0 var(--flat-card-radius) var(--flat-card-radius);
}
.flat-main-shell .table {
	margin-bottom: 0;
	vertical-align: middle;
}
.flat-main-shell .table thead th {
	background: #fff7ed;
	color: #7c2d12;
	font-size: .78rem;
	font-weight: 900;
	letter-spacing: .035em;
	text-transform: uppercase;
	border-bottom-color: rgba(245, 158, 11, .18);
	white-space: nowrap;
}
.flat-main-shell .table tbody td {
	border-color: rgba(17, 24, 39, .06);
	font-weight: 600;
}
.flat-main-shell .table-hover tbody tr:hover,
.flat-main-shell .list-group-item.active,
.flat-main-shell .table tbody tr.active {
	background: rgba(255, 247, 237, .85) !important;
	color: var(--flat-dark);
}
.flat-main-shell .list-group-item {
	border-color: rgba(17, 24, 39, .065);
	font-weight: 700;
}
.flat-main-shell .list-group-item a { color: inherit; text-decoration: none; }

.flat-pagination-wrap { display: flex; justify-content: center; }
.flat-pagination { gap: .35rem; flex-wrap: wrap; }
.flat-pagination .page-link {
	border: 1px solid rgba(245, 158, 11, .18);
	border-radius: .75rem !important;
	font-weight: 850;
	color: var(--flat-accent-dark);
	box-shadow: 0 8px 18px rgba(154, 52, 18, .05);
}
.flat-pagination .page-item.active .page-link {
	background: var(--flat-accent) !important;
	border-color: var(--flat-accent) !important;
	color: #fff !important;
}

/* Store / Tebex / Credits */
.flat-store-page .row > [class*="col-"],
.flat-tebex-page .row > [class*="col-"],
.flat-credits-page .row > [class*="col-"] {
	margin-bottom: 1rem;
}
.flat-main-shell .card-product,
.flat-store-page a.card,
.flat-tebex-page .card,
.flat-credits-page .card-product,
.flat-gaming-night-page .card,
.flat-games-page .card,
.flat-download-page .card {
	height: 100%;
	background: linear-gradient(180deg, #fff, #fffaf2);
}
.flat-main-shell .card-product .card-img-top,
.flat-store-page a.card > .card-img-top,
.flat-tebex-page .card-img-top,
.flat-credits-page .card-img-top {
	width: 100%;
	height: 190px;
	object-fit: cover;
	background: #fff7ed;
}
.flat-main-shell .card-product .card-body,
.flat-store-page a.card .card-body,
.flat-tebex-page .card .card-body,
.flat-credits-page .card-product .card-body {
	display: flex;
	flex-direction: column;
	gap: .5rem;
}
.flat-main-shell .card-product h3,
.flat-store-page a.card h3,
.flat-tebex-page .card h3,
.flat-credits-page .card-product h3 {
	font-weight: 950 !important;
	letter-spacing: -.025em;
	line-height: 1.2;
	color: var(--flat-dark);
}
.flat-main-shell .price,
.flat-main-shell .product-price,
.flat-main-shell .price-current {
	font-weight: 950;
	font-size: 1.14rem;
	color: var(--flat-accent-dark) !important;
}
.flat-main-shell .old-price {
	color: #9ca3af !important;
	text-decoration: line-through;
	font-weight: 700;
}
.flat-main-shell .discount,
.flat-main-shell .stock {
	position: absolute;
	z-index: 2;
	top: .75rem;
	left: .75rem;
	border-radius: 999px;
	padding: .38rem .68rem;
	font-size: .75rem;
	font-weight: 950;
	letter-spacing: .02em;
	box-shadow: 0 10px 22px rgba(15, 23, 42, .14);
}
.flat-main-shell .discount {
	left: auto;
	right: .75rem;
	background: #ef4444;
	color: #fff;
}
.flat-main-shell .stock.have-stock,
.flat-main-shell .stock.bg-success {
	background: var(--flat-accent) !important;
	color: #fff !important;
}
.flat-main-shell .stock.stock-out {
	background: #ef4444;
	color: #fff;
}
.flat-main-shell .progress {
	border-radius: 999px;
	background: #fff7ed;
	box-shadow: inset 0 0 0 1px rgba(245, 158, 11, .14);
}
.flat-main-shell .progress-bar.bg-success {
	background: linear-gradient(90deg, var(--flat-accent), var(--flat-accent-dark)) !important;
}

/* Account */
.flat-profile-sidebar {
	position: sticky;
	top: 1rem;
}
.flat-profile-sidebar-head {
	background: radial-gradient(circle at 50% 0%, rgba(245, 158, 11, .16), transparent 10rem), #fffaf2;
}
.flat-profile-sidebar .avatar,
.flat-account-page .avatar,
.flat-members-page .avatar {
	box-shadow: 0 12px 24px rgba(245, 158, 11, .18);
}
.flat-profile-sidebar-title {
	background: #fff7ed !important;
	color: #7c2d12;
	font-size: .78rem;
	letter-spacing: .06em;
}
.flat-sidebar-link,
.flat-profile-sidebar form .sidebar-link {
	display: flex;
	align-items: center;
	gap: .55rem;
	padding: .78rem 1.15rem;
	font-weight: 800;
	color: var(--flat-muted);
	text-decoration: none !important;
	border-left: 3px solid transparent;
	transition: background .18s ease, color .18s ease, border-color .18s ease;
}
.flat-sidebar-link:hover,
.flat-sidebar-link.active,
.flat-profile-sidebar form .sidebar-link:hover {
	background: #fff7ed;
	color: var(--flat-accent-dark);
	border-left-color: var(--flat-accent);
}
.flat-account-page .user-data {
	padding: 1rem !important;
	border-color: rgba(245, 158, 11, .14) !important;
	background: linear-gradient(180deg, #fff, #fffaf2);
	border-radius: .95rem;
	margin-bottom: .75rem;
}

/* Blog / Forum / Suggestion / Ticket content */
.flat-blog-page .article-content,
.flat-help-page .ck-content,
.flat-page-page .ck-content,
.flat-forum-page .ck-content,
.flat-suggestions-page .ck-content {
	font-size: 1rem;
	line-height: 1.78;
	color: #374151;
}
.flat-blog-page .tags .btn,
.flat-changelog-page .badge,
.flat-help-page .badge,
.flat-forum-page .badge,
.flat-suggestions-page .badge {
	border-radius: 999px;
}
.flat-tickets-page .card,
.flat-forum-page .card,
.flat-suggestions-page .card,
.flat-applications-page .card,
.flat-bazaar-page .card,
.flat-help-page .card,
.flat-changelog-page .card,
.flat-members-page .card,
.flat-leaderboards-page .card,
.flat-punishments-page .card {
	background: rgba(255, 255, 255, .96);
}
.flat-ticket-message,
.flat-tickets-page .message-content,
.flat-forum-page .message-content,
.flat-suggestions-page .message-content,
.flat-blog-page .message-content {
	padding: .8rem 1rem;
	border-radius: 1rem;
	background: #fff7ed;
	border: 1px solid rgba(245, 158, 11, .14);
	line-height: 1.65;
}

/* Game-like cards */
.flat-chest-page .card,
.flat-gifts-page .card,
.flat-fortune-wheel-page .card,
.flat-games-page .card,
.flat-gaming-night-page .card {
	background:
		radial-gradient(circle at 15% 15%, rgba(245, 158, 11, .12), transparent 14rem),
		linear-gradient(180deg, #fff, #fffaf2);
}
.flat-chest-page .card .card-img-top,
.flat-gifts-page .card .card-img-top,
.flat-fortune-wheel-page .card .card-img-top,
.flat-games-page .card .card-img-top {
	background: #fff7ed;
	object-fit: cover;
}

/* Auth / TFA / error */
.flat-auth-shell {
	background:
		radial-gradient(circle at 10% 0%, rgba(245, 158, 11, .20), transparent 22rem),
		radial-gradient(circle at 95% 20%, rgba(217, 119, 6, .12), transparent 18rem),
		linear-gradient(180deg, #fffaf2, #f8fafc);
}
.flat-auth-container .auth-logo {
	max-height: 60px;
	filter: drop-shadow(0 12px 22px rgba(15, 23, 42, .12));
}
.flat-auth-shell .card {
	background: rgba(255, 255, 255, .94);
	backdrop-filter: blur(10px);
}
.flat-auth-shell .card-header {
	background: linear-gradient(135deg, #fff7ed, #fff);
	border-bottom: 1px solid rgba(245, 158, 11, .16);
}
.flat-auth-shell .card-title {
	font-weight: 950;
	letter-spacing: -.025em;
}
.flat-auth-shell .hr-text {
	color: var(--flat-muted);
	font-weight: 800;
}
.flat-error-shell {
	background:
		radial-gradient(circle at center top, rgba(245, 158, 11, .18), transparent 24rem),
		linear-gradient(180deg, #fffaf2, #f8fafc);
}
.flat-error-shell .empty {
	padding: 2rem;
	border-radius: 1.5rem;
	background: rgba(255, 255, 255, .94);
	box-shadow: var(--flat-card-shadow);
	border: 1px solid rgba(245, 158, 11, .16);
}
.flat-error-shell .empty-title {
	font-weight: 950;
	letter-spacing: -.035em;
	color: var(--flat-dark);
}

/* Payment result */
.flat-payment-page .card-body.text-success,
.flat-payment-page .card-body.text-danger {
	padding: 2.5rem;
	color: var(--flat-dark) !important;
}
.flat-payment-page .card-body img {
	filter: drop-shadow(0 16px 24px rgba(245, 158, 11, .18));
}
.flat-payment-page .card-body p {
	font-size: 1.05rem;
	color: var(--flat-muted);
}

/* Header polish without changing backend structure */
.flat-theme .navbar {
	box-shadow: 0 12px 30px rgba(15, 23, 42, .05);
	border-bottom: 1px solid rgba(245, 158, 11, .12);
}
.flat-theme .navbar .nav-link,
.flat-theme .navbar .dropdown-item {
	font-weight: 750;
}
.flat-theme .navbar .nav-link:hover,
.flat-theme .navbar .dropdown-item:hover {
	color: var(--flat-accent-dark) !important;
}
.flat-theme .broadcast {
	background: linear-gradient(90deg, #7c2d12, #d97706, #7c2d12);
	color: #fff;
}
.flat-theme .broadcast a { color: #fff !important; font-weight: 800; }

/* Responsive */
@media (max-width: 991.98px) {
	.flat-main-shell > .section,
	.flat-main-shell .section.flat-page { padding: 1.4rem 0 2rem; }
	.flat-profile-sidebar { position: static; }
	.flat-main-shell .card-product .card-img-top,
	.flat-store-page a.card > .card-img-top,
	.flat-tebex-page .card-img-top,
	.flat-credits-page .card-img-top { height: 170px; }
	.flat-page-hero { align-items: flex-start; }
}
@media (max-width: 767.98px) {
	.flat-breadcrumb {
		width: 100%;
		border-radius: 1rem;
		overflow-x: auto;
		white-space: nowrap;
	}
	.flat-page .page-title { font-size: 1.45rem; }
	.flat-page-hero {
		padding: 1rem;
		border-radius: 1.1rem;
	}
	.flat-main-shell .card-header,
	.flat-main-shell .card-body,
	.flat-auth-shell .card-body { padding: 1rem; }
	.flat-main-shell .table-responsive {
		border-radius: 1rem;
		margin-bottom: 1rem;
	}
	.flat-main-shell .table thead th,
	.flat-main-shell .table tbody td {
		white-space: nowrap;
		font-size: .86rem;
	}
	.flat-main-shell .btn { white-space: normal; }
	.flat-main-shell .card-product .card-img-top,
	.flat-store-page a.card > .card-img-top,
	.flat-tebex-page .card-img-top,
	.flat-credits-page .card-img-top { height: 155px; }
	.flat-payment-page .card-body.text-success,
	.flat-payment-page .card-body.text-danger { padding: 1.5rem; }
}
@media (max-width: 575.98px) {
	.flat-main-shell .container { padding-left: 1rem; padding-right: 1rem; }
	.flat-page-hero { flex-direction: column; }
	.flat-empty-state { padding: 1.25rem; }
	.flat-main-shell .card-product .card-img-top,
	.flat-store-page a.card > .card-img-top,
	.flat-tebex-page .card-img-top,
	.flat-credits-page .card-img-top { height: 145px; }
	.flat-auth-container { padding-left: 1rem; padding-right: 1rem; }
}

/* Dark mode */
[data-bs-theme=dark] body.flat-theme,
body.flat-theme[data-bs-theme=dark] {
	background:
		radial-gradient(circle at 12% 0%, rgba(245, 158, 11, .12), transparent 22rem),
		linear-gradient(180deg, #0f131b, #111827);
	color: rgba(255, 255, 255, .88);
}
[data-bs-theme=dark] .flat-theme .page-wrapper,
[data-bs-theme=dark].flat-theme .page-wrapper {
	background:
		radial-gradient(circle at 90% 10%, rgba(245, 158, 11, .10), transparent 18rem),
		linear-gradient(180deg, #0f131b, #111827);
}
[data-bs-theme=dark] .flat-main-shell .card,
[data-bs-theme=dark] .flat-auth-shell .card,
[data-bs-theme=dark] .flat-error-shell .empty,
[data-bs-theme=dark] .flat-page-hero,
[data-bs-theme=dark] .flat-breadcrumb,
[data-bs-theme=dark] .flat-main-shell .table-responsive,
[data-bs-theme=dark] .flat-empty-state,
[data-bs-theme=dark] .flat-main-shell .card-product,
[data-bs-theme=dark] .flat-store-page a.card,
[data-bs-theme=dark] .flat-tebex-page .card,
[data-bs-theme=dark] .flat-credits-page .card-product {
	background: rgba(17, 24, 39, .92) !important;
	border-color: rgba(245, 158, 11, .16) !important;
	box-shadow: 0 18px 45px rgba(0, 0, 0, .25);
}
[data-bs-theme=dark] .flat-main-shell .card-header,
[data-bs-theme=dark] .flat-profile-sidebar-head,
[data-bs-theme=dark] .flat-profile-sidebar-title,
[data-bs-theme=dark] .flat-main-shell .table thead th,
[data-bs-theme=dark] .flat-ticket-message,
[data-bs-theme=dark] .flat-tickets-page .message-content,
[data-bs-theme=dark] .flat-forum-page .message-content,
[data-bs-theme=dark] .flat-suggestions-page .message-content,
[data-bs-theme=dark] .flat-blog-page .message-content {
	background: rgba(31, 41, 55, .86) !important;
	border-color: rgba(245, 158, 11, .16) !important;
}
[data-bs-theme=dark] .flat-page .page-title,
[data-bs-theme=dark] .flat-page-hero h1,
[data-bs-theme=dark] .flat-main-shell .card-title,
[data-bs-theme=dark] .flat-main-shell .card-product h3,
[data-bs-theme=dark] .flat-store-page a.card h3,
[data-bs-theme=dark] .flat-empty-state strong,
[data-bs-theme=dark] .flat-auth-shell .card-title,
[data-bs-theme=dark] .flat-error-shell .empty-title,
[data-bs-theme=dark] .flat-main-shell .form-label,
[data-bs-theme=dark] .flat-blog-page .article-content,
[data-bs-theme=dark] .flat-help-page .ck-content,
[data-bs-theme=dark] .flat-page-page .ck-content,
[data-bs-theme=dark] .flat-forum-page .ck-content,
[data-bs-theme=dark] .flat-suggestions-page .ck-content {
	color: #fff !important;
}
[data-bs-theme=dark] .flat-page-hero p,
[data-bs-theme=dark] .flat-breadcrumb .breadcrumb-item,
[data-bs-theme=dark] .flat-breadcrumb .breadcrumb-item a,
[data-bs-theme=dark] .flat-empty-state span,
[data-bs-theme=dark] .flat-empty-state p,
[data-bs-theme=dark] .flat-main-shell .table tbody td,
[data-bs-theme=dark] .flat-payment-page .card-body p,
[data-bs-theme=dark] .flat-sidebar-link {
	color: rgba(255, 255, 255, .65) !important;
}
[data-bs-theme=dark] .flat-main-shell .form-control,
[data-bs-theme=dark] .flat-main-shell .form-select,
[data-bs-theme=dark] .flat-main-shell .input-group-text,
[data-bs-theme=dark] .flat-auth-shell .form-control,
[data-bs-theme=dark] .flat-auth-shell .form-select,
[data-bs-theme=dark] .flat-auth-shell .input-group-text {
	background: rgba(17, 24, 39, .82) !important;
	border-color: rgba(255, 255, 255, .10) !important;
	color: #fff !important;
}
[data-bs-theme=dark] .flat-main-shell .table tbody td { border-color: rgba(255,255,255,.07); }
[data-bs-theme=dark] .flat-main-shell .table-hover tbody tr:hover,
[data-bs-theme=dark] .flat-sidebar-link:hover,
[data-bs-theme=dark] .flat-sidebar-link.active {
	background: rgba(245, 158, 11, .10) !important;
	color: #fbbf24 !important;
}

/* Advanced navbar + store/ranking final polish */
.flat-advanced-navbar {
	position: sticky;
	top: 0;
	z-index: 1030;
	padding: 0;
	background: rgba(255, 255, 255, .88) !important;
	backdrop-filter: blur(18px);
	border-bottom: 1px solid rgba(245, 158, 11, .14) !important;
	box-shadow: 0 16px 44px rgba(15, 23, 42, .07) !important;
}
.flat-nav-top {
	width: 100%;
	background: linear-gradient(90deg, rgba(124, 45, 18, .96), rgba(217, 119, 6, .96), rgba(124, 45, 18, .96));
	color: #fff;
}
.flat-nav-top-inner {
	min-height: 42px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
}
.flat-nav-chip,
.flat-nav-stat,
.flat-nav-mini-link {
	display: inline-flex;
	align-items: center;
	gap: .5rem;
	color: #fff !important;
	text-decoration: none !important;
	font-weight: 850;
}
.flat-nav-chip {
	padding: .35rem .75rem;
	border-radius: 999px;
	background: rgba(255, 255, 255, .12);
	border: 1px solid rgba(255, 255, 255, .18);
}
.flat-nav-chip small { opacity: .72; font-weight: 700; }
.flat-nav-top-stats,
.flat-nav-top-actions {
	display: flex;
	align-items: center;
	gap: .8rem;
	flex-wrap: wrap;
}
.flat-nav-stat {
	font-size: .88rem;
	opacity: .96;
}
.flat-nav-mini-link {
	padding: .35rem .65rem;
	border-radius: .8rem;
	background: rgba(255, 255, 255, .1);
	transition: .18s ease;
}
.flat-nav-mini-link:hover { background: rgba(255, 255, 255, .18); transform: translateY(-1px); }
.flat-nav-main {
	min-height: 74px;
	display: flex;
	align-items: center;
}
.flat-nav-brand { margin: 0; }
.flat-brand-link {
	display: inline-flex;
	align-items: center;
	gap: .75rem;
	text-decoration: none !important;
	color: var(--flat-dark) !important;
}
.flat-brand-logo {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 48px;
	height: 48px;
	border-radius: 16px;
	background: linear-gradient(135deg, #fff7ed, #fff);
	border: 1px solid rgba(245, 158, 11, .18);
	box-shadow: 0 12px 28px rgba(154, 52, 18, .10);
}
.flat-brand-logo img {
	max-width: 38px;
	max-height: 38px;
	height: auto !important;
	object-fit: contain;
}
.flat-brand-copy {
	flex-direction: column;
	line-height: 1.05;
}
.flat-brand-copy strong {
	font-size: 1rem;
	font-weight: 950;
	letter-spacing: -.03em;
}
.flat-brand-copy small {
	margin-top: .18rem;
	font-size: .72rem;
	font-weight: 850;
	letter-spacing: .08em;
	text-transform: uppercase;
	color: var(--flat-accent-dark);
}
.flat-nav-links { gap: .25rem; }
.flat-nav-link {
	position: relative;
	min-height: 44px;
	padding: .55rem .78rem !important;
	border-radius: .95rem;
	font-weight: 900 !important;
	color: #374151 !important;
	transition: background .18s ease, color .18s ease, transform .18s ease;
}
.flat-nav-link .nav-link-icon {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	width: 1.35rem;
	margin-right: .35rem;
	color: var(--flat-accent-dark);
}
.flat-nav-link:hover,
.flat-nav-links .nav-item.active .flat-nav-link {
	background: rgba(245, 158, 11, .12);
	color: var(--flat-accent-dark) !important;
	transform: translateY(-1px);
}
.navbar-expand-md .flat-nav-links .nav-item:hover:not(.no-hover-border)::after { display: none; }
.flat-nav-dropdown {
	border: 1px solid rgba(245, 158, 11, .14);
	border-radius: 1rem;
	padding: .5rem;
	box-shadow: 0 18px 45px rgba(15, 23, 42, .12);
}
.flat-nav-dropdown .dropdown-item {
	border-radius: .75rem;
	font-weight: 800 !important;
}
.flat-nav-actions {
	align-items: center;
	gap: .55rem;
}
.flat-nav-cart,
.flat-nav-credit,
.flat-nav-login,
.flat-nav-register {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: .5rem;
	min-height: 42px;
	padding: 0 .8rem;
	border-radius: 999px;
	font-weight: 950;
	text-decoration: none !important;
	transition: .18s ease;
}
.flat-nav-cart {
	position: relative;
	width: 42px;
	padding: 0;
	background: #fff7ed;
	border: 1px solid rgba(245, 158, 11, .22);
	color: var(--flat-accent-dark) !important;
}
.flat-nav-cart-count {
	position: absolute;
	top: -7px;
	right: -7px;
	min-width: 20px;
	height: 20px;
	padding: 0 .25rem;
	border-radius: 999px;
	background: #ef4444;
	color: #fff;
	font-size: .72rem;
	line-height: 20px;
	text-align: center;
	box-shadow: 0 8px 18px rgba(239, 68, 68, .28);
}
.flat-nav-credit,
.flat-nav-register {
	background: linear-gradient(135deg, var(--flat-accent), var(--flat-accent-dark));
	color: #fff !important;
	box-shadow: 0 12px 26px rgba(245, 158, 11, .22);
}
.flat-nav-login {
	background: #fff;
	border: 1px solid rgba(17, 24, 39, .08);
	color: var(--flat-dark) !important;
}
.flat-nav-cart:hover,
.flat-nav-credit:hover,
.flat-nav-login:hover,
.flat-nav-register:hover { transform: translateY(-2px); }
.flat-user-trigger {
	min-height: 44px;
	padding: .25rem .55rem !important;
	border-radius: 999px;
	background: #fff;
	border: 1px solid rgba(245, 158, 11, .18);
	box-shadow: 0 10px 24px rgba(154, 52, 18, .08);
}
.flat-user-dropdown {
	min-width: 270px;
	border-radius: 1.15rem;
	border: 1px solid rgba(245, 158, 11, .16);
	box-shadow: 0 18px 45px rgba(15, 23, 42, .14);
	padding: .6rem;
}
.flat-user-dropdown-head {
	padding: .8rem;
	margin-bottom: .35rem;
	border-radius: .9rem;
	background: linear-gradient(135deg, #fff7ed, #fff);
	border: 1px solid rgba(245, 158, 11, .16);
}
.flat-user-dropdown-head strong,
.flat-user-dropdown-head span { display: block; }
.flat-user-dropdown-head strong { color: var(--flat-dark); font-weight: 950; }
.flat-user-dropdown-head span { color: var(--flat-muted); font-size: .85rem; margin-top: .2rem; }
.flat-nav-toggler {
	border-radius: .9rem;
	border-color: rgba(245, 158, 11, .22) !important;
	background: #fff7ed;
}
.flat-nav-mobile-quick {
	display: grid;
	gap: .55rem;
	padding: .75rem 0 1rem;
}
.flat-nav-mobile-quick a {
	display: flex;
	align-items: center;
	gap: .55rem;
	padding: .75rem .9rem;
	border-radius: .9rem;
	background: rgba(245, 158, 11, .10);
	border: 1px solid rgba(245, 158, 11, .16);
	font-weight: 850;
	color: var(--flat-accent-dark);
	text-decoration: none;
}

.flat-ranking-showcase-v2 .flat-ranking-dashboard {
	display: grid;
	grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr);
	gap: 1rem;
	margin-top: 1rem;
}
.flat-ranking-card {
	padding: 1rem;
	border-radius: 1.25rem;
	background: rgba(255, 255, 255, .82);
	border: 1px solid rgba(245, 158, 11, .18);
	box-shadow: 0 14px 32px rgba(154, 52, 18, .08);
}
.flat-rank-list-v2,
.flat-monthly-card-grid,
.flat-recent-product-grid { display: grid; gap: .65rem; }
.flat-rank-row-v2 {
	display: grid;
	grid-template-columns: auto 44px minmax(0, 1fr) auto;
	align-items: center;
	gap: .7rem;
	padding: .62rem;
	border-radius: 1rem;
	background: #fff;
	border: 1px solid rgba(17, 24, 39, .06);
	text-decoration: none !important;
	color: var(--flat-dark) !important;
}
.flat-rank-row-v2:hover { border-color: rgba(245, 158, 11, .3); transform: translateY(-1px); }
.flat-rank-row-v2 img { width: 44px; height: 44px; border-radius: .9rem; }
.flat-rank-row-v2 strong,
.flat-rank-row-v2 small { display: block; }
.flat-rank-row-v2 strong { font-weight: 950; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.flat-rank-row-v2 small { color: var(--flat-muted); font-weight: 700; }
.flat-rank-num {
	padding: .25rem .45rem;
	border-radius: .7rem;
	background: #fff7ed;
	color: var(--flat-accent-dark);
	font-weight: 950;
}
.flat-rank-row-v2 b { color: var(--flat-accent-dark); font-weight: 950; }
.flat-monthly-card-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.flat-monthly-mini-card {
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: .35rem;
	min-height: 142px;
	padding: .9rem .6rem;
	border-radius: 1rem;
	background: #fff;
	border: 1px solid rgba(17, 24, 39, .06);
	text-align: center;
	text-decoration: none !important;
	color: var(--flat-dark) !important;
}
.flat-monthly-mini-card.rank-1 { background: linear-gradient(180deg, #fff8d7, #fff); border-color: rgba(245, 158, 11, .3); }
.flat-monthly-mini-card img { width: 54px; height: 54px; border-radius: 1rem; box-shadow: 0 10px 20px rgba(15, 23, 42, .08); }
.flat-monthly-mini-card strong { max-width: 100%; font-weight: 950; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.flat-monthly-mini-card small { color: var(--flat-accent-dark); font-weight: 900; }
.flat-monthly-mini-place { position: absolute; top: .55rem; left: .55rem; font-weight: 950; color: var(--flat-accent-dark); }
.flat-recent-product-grid { grid-template-columns: 1fr; }
.flat-recent-product-card {
	display: grid;
	grid-template-columns: 42px minmax(0, 1fr) auto;
	align-items: center;
	gap: .7rem;
	padding: .75rem;
	border-radius: 1rem;
	background: #fff;
	border: 1px solid rgba(17, 24, 39, .06);
	text-decoration: none !important;
	color: var(--flat-dark) !important;
}
.flat-recent-product-card:hover { border-color: rgba(245, 158, 11, .3); transform: translateY(-1px); }
.flat-recent-product-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 42px;
	height: 42px;
	border-radius: .95rem;
	background: #fff7ed;
	color: var(--flat-accent-dark);
}
.flat-recent-product-card strong,
.flat-recent-product-card small { display: flex; align-items: center; gap: .35rem; }
.flat-recent-product-card strong { font-weight: 950; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.flat-recent-product-card small { color: var(--flat-muted); font-weight: 750; }
.flat-recent-product-card small img { width: 24px; height: 24px; border-radius: .5rem; }
.flat-recent-product-arrow { color: var(--flat-accent-dark); }

.flat-hero-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: .45rem;
	padding: .45rem .75rem;
	border-radius: 999px;
	background: rgba(245, 158, 11, .12);
	border: 1px solid rgba(245, 158, 11, .18);
	color: var(--flat-accent-dark);
	font-size: .75rem;
	font-weight: 950;
	letter-spacing: .06em;
	text-transform: uppercase;
}
.flat-store-hero,
.flat-store-category-hero {
	background:
		radial-gradient(circle at 10% 10%, rgba(245, 158, 11, .18), transparent 18rem),
		linear-gradient(135deg, #fff, #fff7ed);
}
.flat-store-hero-btn { border-radius: 999px; font-weight: 950; }
.flat-store-category-grid .col-xl-3,
.flat-product-grid .col-xl-3 { display: flex; }
.flat-store-category-card,
.flat-store-product-card {
	position: relative;
	width: 100%;
	overflow: hidden;
	border-radius: 1.25rem !important;
	text-decoration: none !important;
	border: 1px solid rgba(245, 158, 11, .14) !important;
	box-shadow: 0 14px 32px rgba(154, 52, 18, .08);
	transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.flat-store-category-card:hover,
.flat-store-product-card:hover {
	transform: translateY(-5px);
	border-color: rgba(245, 158, 11, .34) !important;
	box-shadow: 0 24px 54px rgba(154, 52, 18, .16);
}
.flat-category-media,
.flat-product-media { position: relative; overflow: hidden; background: #fff7ed; }
.flat-category-media img,
.flat-product-media img { transition: transform .28s ease; }
.flat-store-category-card:hover .flat-category-media img,
.flat-store-product-card:hover .flat-product-media img { transform: scale(1.045); }
.flat-category-icon {
	position: absolute;
	right: .85rem;
	bottom: .85rem;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 42px;
	height: 42px;
	border-radius: 1rem;
	background: #fff;
	color: var(--flat-accent-dark);
	box-shadow: 0 12px 24px rgba(15, 23, 42, .12);
}
.flat-category-kicker,
.flat-product-kicker {
	display: inline-flex;
	align-items: center;
	gap: .35rem;
	font-size: .72rem;
	font-weight: 950;
	letter-spacing: .06em;
	text-transform: uppercase;
	color: var(--flat-accent-dark);
}
.flat-category-go {
	display: inline-flex;
	align-items: center;
	gap: .35rem;
	margin-top: .45rem;
	font-weight: 900;
	color: var(--flat-accent-dark);
}
.flat-store-product-card .card-body { min-height: 230px; }
.flat-store-product-card .flat-product-price-line {
	display: flex;
	align-items: baseline;
	gap: .45rem;
	flex-wrap: wrap;
}
.flat-product-stock-text {
	display: inline-flex;
	align-items: center;
	gap: .35rem;
	margin-bottom: .65rem;
	font-weight: 850;
	font-size: .85rem;
	color: var(--flat-muted);
}
.flat-product-stock-text.is-in { color: var(--flat-accent-dark); }
.flat-product-stock-text.is-out { color: #dc2626; }
.flat-product-stock-text.is-unlimited { color: #2563eb; }
.flat-store-product-card .btn,
.flat-order-summary-card .btn { border-radius: .95rem; font-weight: 950; }
.flat-community-goal {
	padding: 1.1rem;
	border-radius: 1.25rem;
	background: linear-gradient(135deg, #fff7ed, #fff);
	border: 1px solid rgba(245, 158, 11, .18);
	box-shadow: 0 14px 32px rgba(154, 52, 18, .08);
}
.flat-community-goal-head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 1rem;
	margin-bottom: .75rem;
}
.flat-community-goal-head span { color: var(--flat-accent-dark); font-weight: 950; text-transform: uppercase; letter-spacing: .06em; font-size: .74rem; }
.flat-community-goal-head h2 { margin: .35rem 0 0; font-weight: 950; letter-spacing: -.03em; }
.flat-community-goal-head strong { font-size: 1.35rem; color: var(--flat-accent-dark); }
.flat-community-goal-desc { color: var(--flat-muted); font-weight: 650; margin-bottom: .75rem; }
.flat-community-progress { height: 30px; border-radius: 999px; background: rgba(245, 158, 11, .12); overflow: hidden; }
.flat-community-progress .progress-bar { background: linear-gradient(90deg, var(--flat-accent), var(--flat-accent-dark)); font-weight: 950; }
.flat-product-detail-shell {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 360px;
	gap: 1.25rem;
	align-items: start;
}
.flat-product-detail-card,
.flat-order-summary-card { border-radius: 1.35rem !important; overflow: hidden; }
.flat-product-detail-media {
	position: relative;
	padding: 1rem;
	border-radius: 1.25rem;
	background: radial-gradient(circle at 20% 0%, rgba(245, 158, 11, .18), transparent 14rem), #fff7ed;
	border: 1px solid rgba(245, 158, 11, .16);
}
.flat-product-detail-media img { border-radius: 1rem; object-fit: cover; min-height: 260px; max-height: 430px; }
.flat-product-detail-discount {
	position: absolute;
	top: 1rem;
	right: 1rem;
	z-index: 2;
	padding: .55rem .75rem;
	border-radius: 999px;
	background: #ef4444;
	color: #fff;
	font-weight: 950;
	box-shadow: 0 10px 22px rgba(239, 68, 68, .22);
}
.flat-product-detail-kicker,
.flat-detail-badge {
	display: inline-flex;
	align-items: center;
	gap: .4rem;
	font-weight: 900;
}
.flat-product-detail-kicker { color: var(--flat-accent-dark); text-transform: uppercase; letter-spacing: .06em; font-size: .76rem; }
.flat-product-detail-info h1 { margin: .55rem 0 .9rem; font-size: clamp(2rem, 4vw, 3.2rem); font-weight: 950; letter-spacing: -.05em; color: var(--flat-dark); }
.flat-product-detail-badges { display: flex; gap: .55rem; flex-wrap: wrap; }
.flat-detail-badge {
	padding: .48rem .7rem;
	border-radius: 999px;
	background: #fff7ed;
	border: 1px solid rgba(245, 158, 11, .18);
	color: var(--flat-accent-dark);
}
.flat-detail-badge.is-discount { background: #fef2f2; border-color: rgba(239, 68, 68, .2); color: #dc2626; }
.flat-detail-badge.is-stock { background: #fff7ed; color: var(--flat-accent-dark); }
.flat-detail-badge.is-out { background: #fef2f2; color: #dc2626; border-color: rgba(220, 38, 38, .2); }
.flat-product-detail-content { font-size: 1rem; line-height: 1.75; color: #374151; }
.flat-product-detail-side { position: sticky; top: 112px; }
.flat-order-summary-card .card-header { background: #fff7ed !important; border-bottom-color: rgba(245, 158, 11, .16) !important; }
.flat-summary-row,
.flat-summary-total {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: .75rem;
	padding: .7rem 0;
	border-bottom: 1px solid rgba(17, 24, 39, .08);
}
.flat-summary-row span { color: var(--flat-muted); font-weight: 800; }
.flat-summary-row b { color: var(--flat-dark); }
.flat-summary-row.is-discount b { color: #dc2626; }
.flat-summary-total {
	margin-top: .25rem;
	padding: 1rem;
	border: 0;
	border-radius: 1rem;
	background: #fff7ed;
}
.flat-summary-total span { color: var(--flat-muted); font-weight: 900; }
.flat-summary-total strong { color: var(--flat-accent-dark); font-size: 1.35rem; font-weight: 950; }

@media (max-width: 1199.98px) {
	.flat-nav-link { padding-left: .55rem !important; padding-right: .55rem !important; }
	.flat-brand-copy { display: none !important; }
}
@media (max-width: 991.98px) {
	.flat-ranking-showcase-v2 .flat-ranking-dashboard { grid-template-columns: 1fr; }
	.flat-product-detail-shell { grid-template-columns: 1fr; }
	.flat-product-detail-side { position: static; }
}
@media (max-width: 767.98px) {
	.flat-advanced-navbar { position: sticky; }
	.flat-nav-main { min-height: 64px; }
	.flat-nav-collapse {
		margin-top: .75rem;
		padding: .75rem;
		border-radius: 1.15rem;
		background: #fff;
		border: 1px solid rgba(245, 158, 11, .16);
		box-shadow: 0 16px 36px rgba(15, 23, 42, .10);
	}
	.flat-nav-links { gap: .4rem; }
	.flat-nav-link { width: 100%; justify-content: flex-start; }
	.flat-nav-actions { margin-left: auto; }
	.flat-nav-credit { display: none !important; }
	.flat-monthly-card-grid { grid-template-columns: 1fr; }
	.flat-rank-row-v2 { grid-template-columns: auto 40px minmax(0, 1fr); }
	.flat-rank-row-v2 b { grid-column: 3; justify-self: start; }
	.flat-product-detail-media img { min-height: 200px; }
}
@media (max-width: 575.98px) {
	.flat-brand-logo { width: 42px; height: 42px; border-radius: 14px; }
	.flat-nav-cart,
	.flat-nav-login { width: 40px; min-height: 40px; padding: 0; }
	.flat-store-product-card .card-body { min-height: auto; }
	.flat-community-goal-head { flex-direction: column; }
	.flat-product-detail-info h1 { font-size: 1.85rem; }
}

[data-bs-theme=dark] .flat-advanced-navbar,
[data-bs-theme=dark].flat-theme .flat-advanced-navbar {
	background: rgba(17, 24, 39, .88) !important;
	border-bottom-color: rgba(245, 158, 11, .16) !important;
}
[data-bs-theme=dark] .flat-brand-link,
[data-bs-theme=dark] .flat-nav-link,
[data-bs-theme=dark] .flat-user-dropdown-head strong,
[data-bs-theme=dark] .flat-product-detail-info h1,
[data-bs-theme=dark] .flat-summary-row b { color: #fff !important; }
[data-bs-theme=dark] .flat-brand-logo,
[data-bs-theme=dark] .flat-nav-login,
[data-bs-theme=dark] .flat-user-trigger,
[data-bs-theme=dark] .flat-nav-collapse,
[data-bs-theme=dark] .flat-ranking-card,
[data-bs-theme=dark] .flat-rank-row-v2,
[data-bs-theme=dark] .flat-monthly-mini-card,
[data-bs-theme=dark] .flat-recent-product-card,
[data-bs-theme=dark] .flat-store-category-card,
[data-bs-theme=dark] .flat-store-product-card,
[data-bs-theme=dark] .flat-community-goal,
[data-bs-theme=dark] .flat-product-detail-media,
[data-bs-theme=dark] .flat-summary-total,
[data-bs-theme=dark] .flat-order-summary-card .card-header {
	background: rgba(31, 41, 55, .88) !important;
	border-color: rgba(245, 158, 11, .16) !important;
}
[data-bs-theme=dark] .flat-nav-link { color: rgba(255,255,255,.82) !important; }
[data-bs-theme=dark] .flat-product-detail-content,
[data-bs-theme=dark] .flat-community-goal-desc { color: rgba(255,255,255,.72) !important; }
[data-bs-theme=dark] .flat-rank-row-v2 small,
[data-bs-theme=dark] .flat-recent-product-card small,
[data-bs-theme=dark] .flat-summary-row span,
[data-bs-theme=dark] .flat-summary-total span { color: rgba(255,255,255,.62) !important; }

/* =========================================================
   Epiklava Flat UX Pack - Leaf inspired global upgrades
   ========================================================= */
.flat-global-actions {
	position: sticky;
	top: 76px;
	z-index: 1019;
	margin-top: -1px;
	pointer-events: none;
}
.flat-global-actions-inner {
	pointer-events: auto;
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: .75rem;
	padding: .75rem;
	border-radius: 0 0 1.25rem 1.25rem;
	background: rgba(255,255,255,.86);
	border: 1px solid rgba(245,158,11,.14);
	border-top: 0;
	box-shadow: 0 16px 40px rgba(15,23,42,.08);
	backdrop-filter: blur(14px);
}
.flat-global-action {
	display: flex;
	align-items: center;
	gap: .75rem;
	min-width: 0;
	padding: .72rem .8rem;
	border: 1px solid rgba(17,24,39,.08);
	border-radius: 1rem;
	background: linear-gradient(180deg, #fff, #fff7ed);
	color: var(--flat-dark);
	text-decoration: none !important;
	transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
button.flat-global-action { width: 100%; text-align: left; cursor: pointer; }
.flat-global-action:hover { transform: translateY(-2px); border-color: rgba(245,158,11,.35); box-shadow: 0 12px 24px rgba(15,23,42,.08); color: var(--flat-dark); }
.flat-global-action.is-highlight { background: linear-gradient(135deg, #f59e0b, #f97316); color: #fff; border-color: rgba(245,158,11,.35); }
.flat-global-action-icon {
	width: 38px;
	height: 38px;
	border-radius: .9rem;
	display: grid;
	place-items: center;
	background: rgba(245,158,11,.13);
	color: var(--flat-accent-dark);
	font-size: 1.15rem;
	flex: 0 0 auto;
}
.flat-global-action.is-highlight .flat-global-action-icon { background: rgba(255,255,255,.18); color: #fff; }
.flat-global-action strong,
.flat-global-action small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.flat-global-action strong { font-weight: 900; line-height: 1.1; }
.flat-global-action small { color: var(--flat-muted); font-size: .76rem; margin-top: .15rem; }
.flat-global-action.is-highlight small { color: rgba(255,255,255,.82); }

.flat-home-command-center {
	display: grid;
	grid-template-columns: minmax(0, 1.35fr) minmax(280px, .65fr);
	gap: 1rem;
	align-items: stretch;
	padding: clamp(1.2rem, 2vw, 2rem);
	border-radius: 1.6rem;
	background:
		radial-gradient(circle at 15% 10%, rgba(245,158,11,.22), transparent 26%),
		linear-gradient(135deg, #111827, #1f2937 52%, #7c2d12);
	box-shadow: 0 24px 60px rgba(15,23,42,.20);
	color: #fff;
	overflow: hidden;
	position: relative;
}
.flat-home-command-center:after {
	content: "";
	position: absolute;
	inset: auto -80px -120px auto;
	width: 260px;
	height: 260px;
	background: rgba(245,158,11,.24);
	filter: blur(30px);
	border-radius: 999px;
}
.flat-home-hero-copy { position: relative; z-index: 1; max-width: 760px; }
.flat-home-hero-copy .flat-hero-eyebrow { color: #fed7aa; border-color: rgba(255,255,255,.16); background: rgba(255,255,255,.10); }
.flat-home-hero-copy h1 {
	font-size: clamp(2.1rem, 5vw, 4.5rem);
	line-height: .96;
	letter-spacing: -.055em;
	font-weight: 950;
	max-width: 820px;
	margin: .8rem 0 1rem;
}
.flat-home-hero-copy p { color: rgba(255,255,255,.78); max-width: 640px; font-size: 1.05rem; }
.flat-home-hero-actions { display: flex; flex-wrap: wrap; gap: .65rem; margin-top: 1.25rem; }
.flat-home-hero-actions .btn { border-radius: .95rem; font-weight: 900; padding: .75rem 1rem; }
.flat-home-hero-actions .btn-outline-primary { color: #fff; border-color: rgba(255,255,255,.25); background: rgba(255,255,255,.08); }
.flat-home-stat-grid { position: relative; z-index: 1; display: grid; gap: .75rem; align-content: center; }
.flat-stat-card,
.flat-trust-card,
.flat-mode-card,
.flat-quick-card {
	display: flex;
	align-items: center;
	gap: .9rem;
	padding: 1rem;
	border-radius: 1.15rem;
	border: 1px solid rgba(17,24,39,.08);
	background: #fff;
	box-shadow: 0 12px 30px rgba(15,23,42,.06);
	text-decoration: none !important;
	color: var(--flat-dark);
	transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.flat-home-command-center .flat-stat-card { background: rgba(255,255,255,.10); border-color: rgba(255,255,255,.14); color: #fff; box-shadow: none; backdrop-filter: blur(10px); }
.flat-stat-card:hover,
.flat-trust-card:hover,
.flat-mode-card:hover,
.flat-quick-card:hover { transform: translateY(-3px); box-shadow: 0 18px 36px rgba(15,23,42,.10); border-color: rgba(245,158,11,.30); color: var(--flat-dark); }
.flat-home-command-center .flat-stat-card:hover { color: #fff; }
.flat-stat-icon,
.flat-trust-icon,
.flat-mode-icon,
.flat-quick-card-icon {
	width: 46px;
	height: 46px;
	border-radius: 1rem;
	display: grid;
	place-items: center;
	font-size: 1.3rem;
	background: #fff7ed;
	color: var(--flat-accent-dark);
	flex: 0 0 auto;
}
.flat-home-command-center .flat-stat-icon { background: rgba(255,255,255,.16); color: #fed7aa; }
.flat-stat-copy,
.flat-trust-content,
.flat-mode-copy { display: block; min-width: 0; }
.flat-stat-copy small,
.flat-trust-content small,
.flat-mode-copy small { display: block; font-size: .73rem; color: var(--flat-muted); font-weight: 900; text-transform: uppercase; letter-spacing: .05em; }
.flat-home-command-center .flat-stat-copy small { color: rgba(255,255,255,.62); }
.flat-stat-copy strong,
.flat-trust-content strong,
.flat-mode-copy strong,
.flat-quick-card strong { display: block; color: inherit; font-size: 1.02rem; font-weight: 950; line-height: 1.15; overflow: hidden; text-overflow: ellipsis; }
.flat-stat-copy em,
.flat-trust-content em,
.flat-mode-copy em,
.flat-quick-card small { display: block; color: var(--flat-muted); font-style: normal; font-size: .84rem; margin-top: .2rem; line-height: 1.35; }
.flat-home-command-center .flat-stat-copy em { color: rgba(255,255,255,.70); }
.flat-mode-strip,
.flat-trust-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1rem;
}
.flat-mode-card { position: relative; overflow: hidden; min-height: 132px; align-items: flex-start; }
.flat-mode-card:before {
	content: "";
	position: absolute;
	inset: 0 auto 0 0;
	width: 5px;
	background: linear-gradient(180deg, #f59e0b, #f97316);
}
.flat-mode-arrow { margin-left: auto; color: var(--flat-accent-dark); font-size: 1.2rem; }
.flat-trust-card { align-items: flex-start; }
.flat-quick-card { justify-content: space-between; }
.flat-quick-card.is-accent { background: linear-gradient(135deg, #f59e0b, #f97316); color: #fff; border-color: rgba(245,158,11,.25); }
.flat-quick-card.is-accent small { color: rgba(255,255,255,.76); }
.flat-quick-card.is-accent .flat-quick-card-icon { background: rgba(255,255,255,.16); color: #fff; }

.flat-product-description,
.flat-store-category-card p {
	font-size: .86rem;
	color: var(--flat-muted);
	line-height: 1.45;
	margin: .35rem 0 .75rem;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}
.flat-product-kicker { display: flex; align-items: center; gap: .35rem; flex-wrap: wrap; }
.flat-product-kicker em {
	font-style: normal;
	margin-left: auto;
	font-size: .68rem;
	font-weight: 900;
	padding: .18rem .45rem;
	border-radius: 999px;
	background: #ecfeff;
	color: #0891b2;
}
.flat-category-card-foot { display: flex; align-items: center; justify-content: space-between; gap: .5rem; margin-top: .75rem; }
.flat-category-card-foot small { color: var(--flat-muted); font-weight: 800; white-space: nowrap; }
.flat-store-category-card .card-body { display: flex; flex-direction: column; }
.flat-store-category-card .flat-category-go { margin-top: 0 !important; }

.flat-cart-layout { align-items: flex-start; }
.flat-cart-card,
.flat-cart-summary-card { border-radius: 1.25rem !important; border: 1px solid rgba(17,24,39,.08) !important; box-shadow: 0 14px 34px rgba(15,23,42,.07); overflow: hidden; }
.flat-cart-card .card-header,
.flat-cart-summary-card .card-header { background: #fff7ed !important; border-bottom-color: rgba(245,158,11,.16) !important; }
.flat-cart-table td,
.flat-cart-table th { vertical-align: middle; }
.flat-cart-summary-card { position: sticky; top: 150px; }
.flat-product-help-card { display: grid; gap: .75rem; }
.flat-product-help-card .flat-trust-card { box-shadow: none; }

.flat-recent-user-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .65rem; }
.flat-recent-user-card {
	display: flex;
	align-items: center;
	gap: .65rem;
	padding: .65rem;
	border-radius: .95rem;
	background: #fff7ed;
	border: 1px solid rgba(245,158,11,.14);
	text-decoration: none !important;
	color: var(--flat-dark);
}
.flat-recent-user-card img { width: 36px; height: 36px; border-radius: .75rem; image-rendering: pixelated; }
.flat-recent-user-card strong,
.flat-recent-user-card small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.flat-recent-user-card strong { font-weight: 900; }
.flat-recent-user-card small { color: var(--flat-muted); font-size: .74rem; }
.flat-recent-product-grid-wide { grid-template-columns: repeat(2, minmax(0, 1fr)); }

/* Universal polish for all old pages without rewriting backend templates */
.flat-page .card:not(.flat-store-product-card):not(.flat-store-category-card):not(.flat-news-card) {
	border-radius: 1.15rem;
	border-color: rgba(17,24,39,.08);
	box-shadow: 0 12px 28px rgba(15,23,42,.055);
}
.flat-page .card-header { border-top-left-radius: 1.15rem !important; border-top-right-radius: 1.15rem !important; }
.flat-page .form-control,
.flat-page .form-select,
.flat-auth-page .form-control,
.flat-auth-page .form-select {
	border-radius: .85rem;
	border-color: rgba(17,24,39,.12);
	min-height: 42px;
}
.flat-page textarea.form-control { min-height: 120px; }
.flat-page .btn,
.flat-auth-page .btn { border-radius: .85rem; font-weight: 800; }
.flat-page .table-responsive { border-radius: 1rem; }
.flat-page .table thead th { color: var(--flat-muted); font-size: .76rem; text-transform: uppercase; letter-spacing: .045em; font-weight: 900; }
.flat-page .badge { border-radius: 999px; font-weight: 850; }
.flat-page .dropdown-menu { border-radius: 1rem; border-color: rgba(17,24,39,.08); box-shadow: 0 16px 36px rgba(15,23,42,.10); }
.flat-page .list-group-item { border-color: rgba(17,24,39,.07); }
.flat-page .alert { border-radius: 1rem; border-width: 1px; }

/* Page group accents */
.flat-store-page .page-title,
.flat-credits-page .page-title,
.flat-account-page .page-title,
.flat-tickets-page .page-title,
.flat-forum-page .page-title,
.flat-blog-page .page-title { letter-spacing: -.025em; font-weight: 950; }
.flat-account-page .card-title:before,
.flat-tickets-page .card-title:before,
.flat-forum-page .card-title:before,
.flat-help-page .card-title:before,
.flat-punishments-page .card-title:before,
.flat-leaderboards-page .card-title:before {
	content: "";
	display: inline-block;
	width: .55rem;
	height: .55rem;
	border-radius: 999px;
	background: var(--flat-accent);
	margin-right: .45rem;
	vertical-align: middle;
}

@media (max-width: 1199.98px) {
	.flat-global-actions { top: 66px; }
	.flat-global-actions-inner { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 991.98px) {
	.flat-home-command-center { grid-template-columns: 1fr; }
	.flat-mode-strip,
	.flat-trust-grid { grid-template-columns: 1fr; }
	.flat-cart-summary-card { position: static; }
}
@media (max-width: 767.98px) {
	.flat-global-actions { position: relative; top: auto; }
	.flat-global-actions .container-xl { padding-left: .75rem; padding-right: .75rem; }
	.flat-global-actions-inner { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; border-radius: 0 0 1rem 1rem; }
	.flat-global-action { min-width: 230px; scroll-snap-align: start; }
	.flat-home-command-center { padding: 1rem; border-radius: 1.25rem; }
	.flat-home-hero-copy h1 { font-size: 2.15rem; }
	.flat-home-hero-actions .btn { width: 100%; justify-content: center; }
	.flat-recent-product-grid-wide,
	.flat-recent-user-grid { grid-template-columns: 1fr; }
	.flat-cart-table { min-width: 680px; }
}

[data-bs-theme=dark] .flat-global-actions-inner,
[data-bs-theme=dark] .flat-global-action,
[data-bs-theme=dark] .flat-stat-card,
[data-bs-theme=dark] .flat-trust-card,
[data-bs-theme=dark] .flat-mode-card,
[data-bs-theme=dark] .flat-quick-card,
[data-bs-theme=dark] .flat-recent-user-card,
[data-bs-theme=dark] .flat-cart-card,
[data-bs-theme=dark] .flat-cart-summary-card,
[data-bs-theme=dark] .flat-page .card:not(.flat-store-product-card):not(.flat-store-category-card):not(.flat-news-card) {
	background: rgba(31,41,55,.90) !important;
	border-color: rgba(245,158,11,.16) !important;
	color: #fff !important;
}
[data-bs-theme=dark] .flat-home-command-center { background: linear-gradient(135deg, #020617, #111827 58%, #78350f); }
[data-bs-theme=dark] .flat-global-action small,
[data-bs-theme=dark] .flat-stat-copy small,
[data-bs-theme=dark] .flat-stat-copy em,
[data-bs-theme=dark] .flat-trust-content small,
[data-bs-theme=dark] .flat-trust-content em,
[data-bs-theme=dark] .flat-mode-copy small,
[data-bs-theme=dark] .flat-mode-copy em,
[data-bs-theme=dark] .flat-product-description,
[data-bs-theme=dark] .flat-store-category-card p,
[data-bs-theme=dark] .flat-category-card-foot small,
[data-bs-theme=dark] .flat-recent-user-card small { color: rgba(255,255,255,.66) !important; }
[data-bs-theme=dark] .flat-stat-icon,
[data-bs-theme=dark] .flat-trust-icon,
[data-bs-theme=dark] .flat-mode-icon,
[data-bs-theme=dark] .flat-quick-card-icon,
[data-bs-theme=dark] .flat-global-action-icon { background: rgba(245,158,11,.14); color: #fbbf24; }
[data-bs-theme=dark] .flat-page .form-control,
[data-bs-theme=dark] .flat-page .form-select,
[data-bs-theme=dark] .flat-auth-page .form-control,
[data-bs-theme=dark] .flat-auth-page .form-select { background: rgba(17,24,39,.85); border-color: rgba(255,255,255,.10); color: #fff; }


/* =========================================================
   Clean Flat Header Rebuild - no Leaf/cloud navbar
   ========================================================= */
.flat-clean-header {
	position: sticky;
	top: 0;
	z-index: 1030;
	padding: 0;
	min-height: 72px;
	background: rgba(255,255,255,.94) !important;
	backdrop-filter: blur(14px);
	border-bottom: 1px solid rgba(17,24,39,.08) !important;
	box-shadow: 0 10px 30px rgba(15,23,42,.06) !important;
}
.flat-clean-header-inner {
	min-height: 72px;
	display: flex;
	align-items: center;
	gap: .8rem;
}
.flat-clean-brand { min-width: 0; margin: 0; }
.flat-clean-brand-link {
	display: inline-flex;
	align-items: center;
	gap: .7rem;
	min-width: 0;
	text-decoration: none !important;
	color: var(--flat-dark) !important;
}
.flat-clean-logo {
	height: 38px !important;
	max-width: 150px;
	object-fit: contain;
}
.flat-clean-brand-text {
	min-width: 0;
	flex-direction: column;
	line-height: 1.05;
}
.flat-clean-brand-text strong {
	max-width: 170px;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	font-size: .98rem;
	font-weight: 950;
	letter-spacing: -.02em;
}
.flat-clean-brand-text small {
	margin-top: .18rem;
	font-size: .68rem;
	font-weight: 850;
	letter-spacing: .08em;
	text-transform: uppercase;
	color: var(--flat-accent-dark);
}
.flat-clean-collapse { min-width: 0; }
.flat-clean-links {
	gap: .15rem;
	min-width: 0;
}
.flat-clean-link {
	min-height: 42px;
	padding: .55rem .68rem !important;
	border-radius: .9rem;
	font-weight: 850 !important;
	color: #374151 !important;
	transition: background .16s ease, color .16s ease;
}
.flat-clean-link .nav-link-icon {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	width: 1.25rem;
	margin-right: .32rem;
	color: var(--flat-accent-dark);
}
.flat-clean-link:hover,
.flat-clean-links .nav-item.active .flat-clean-link {
	background: rgba(245,158,11,.10);
	color: var(--flat-accent-dark) !important;
}
.navbar-expand-lg .flat-clean-links .nav-item:hover:not(.no-hover-border)::after,
.navbar-expand-md .flat-clean-links .nav-item:hover:not(.no-hover-border)::after { display: none; }
.flat-clean-dropdown {
	padding: .45rem;
	border-radius: .95rem;
	border: 1px solid rgba(17,24,39,.08);
	box-shadow: 0 16px 36px rgba(15,23,42,.12);
}
.flat-clean-dropdown .dropdown-item,
.flat-clean-user-menu .dropdown-item {
	border-radius: .72rem;
	font-weight: 760;
}
.flat-clean-actions {
	align-items: center;
	gap: .45rem;
	margin-left: auto;
}
.flat-clean-ip,
.flat-clean-icon-btn,
.flat-clean-credit,
.flat-clean-login,
.flat-clean-register {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: .45rem;
	min-height: 40px;
	padding: 0 .78rem;
	border-radius: 999px;
	font-weight: 900;
	text-decoration: none !important;
	white-space: nowrap;
	transition: transform .16s ease, background .16s ease, border-color .16s ease;
}
.flat-clean-ip {
	max-width: 180px;
	background: #fff7ed;
	border: 1px solid rgba(245,158,11,.20);
	color: var(--flat-accent-dark) !important;
}
.flat-clean-ip span {
	overflow: hidden;
	text-overflow: ellipsis;
}
.flat-clean-icon-btn,
.flat-clean-login {
	width: 40px;
	padding: 0;
	background: #fff;
	border: 1px solid rgba(17,24,39,.09);
	color: #374151 !important;
}
.flat-clean-cart { position: relative; }
.flat-clean-cart-count {
	position: absolute;
	top: -7px;
	right: -7px;
	min-width: 19px;
	height: 19px;
	padding: 0 .24rem;
	border-radius: 999px;
	background: #ef4444;
	color: #fff;
	font-size: .68rem;
	line-height: 19px;
	text-align: center;
	box-shadow: 0 8px 18px rgba(239,68,68,.24);
}
.flat-clean-credit,
.flat-clean-register {
	background: var(--flat-accent);
	border: 1px solid var(--flat-accent);
	color: #fff !important;
	box-shadow: 0 10px 22px rgba(245,158,11,.18);
}
.flat-clean-ip:hover,
.flat-clean-icon-btn:hover,
.flat-clean-credit:hover,
.flat-clean-login:hover,
.flat-clean-register:hover,
.flat-clean-user-trigger:hover {
	transform: translateY(-1px);
}
.flat-clean-user-trigger {
	min-height: 42px;
	padding: .24rem .5rem !important;
	border-radius: 999px;
	background: #fff;
	border: 1px solid rgba(17,24,39,.09);
}
.flat-clean-user-info {
	flex-direction: column;
	line-height: 1.05;
	padding-left: .45rem;
}
.flat-clean-user-info strong {
	max-width: 120px;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	font-size: .86rem;
	font-weight: 900;
}
.flat-clean-user-info small {
	margin-top: .15rem;
	font-size: .7rem;
	color: var(--flat-muted);
}
.flat-clean-user-menu {
	min-width: 255px;
	padding: .55rem;
	border-radius: 1rem;
	border: 1px solid rgba(17,24,39,.08);
	box-shadow: 0 18px 42px rgba(15,23,42,.14);
}
.flat-clean-user-head {
	padding: .75rem;
	margin-bottom: .35rem;
	border-radius: .85rem;
	background: #fff7ed;
	border: 1px solid rgba(245,158,11,.18);
}
.flat-clean-user-head strong,
.flat-clean-user-head span { display: block; }
.flat-clean-user-head strong { font-weight: 950; color: var(--flat-dark); }
.flat-clean-user-head span { margin-top: .15rem; color: var(--flat-muted); font-size: .84rem; }
.flat-clean-toggler {
	border-radius: .85rem;
	border-color: rgba(245,158,11,.22) !important;
	background: #fff7ed;
}
.flat-clean-mobile-panel {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: .55rem;
	padding-top: .75rem;
	margin-top: .55rem;
	border-top: 1px solid rgba(17,24,39,.08);
}
.flat-clean-mobile-panel a {
	display: flex;
	align-items: center;
	gap: .5rem;
	min-width: 0;
	padding: .7rem .75rem;
	border-radius: .85rem;
	background: #fff7ed;
	border: 1px solid rgba(245,158,11,.16);
	color: var(--flat-accent-dark) !important;
	font-weight: 850;
	text-decoration: none !important;
}
.flat-clean-mobile-panel a span {
	min-width: 0;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

@media (max-width: 1199.98px) {
	.flat-clean-link { padding-left: .52rem !important; padding-right: .52rem !important; }
	.flat-clean-brand-text { display: none !important; }
}
@media (max-width: 991.98px) {
	.flat-clean-header { min-height: 64px; }
	.flat-clean-header-inner { min-height: 64px; }
	.flat-clean-brand { flex: 1 1 auto; }
	.flat-clean-logo { height: 32px !important; max-width: 136px; }
	.flat-clean-actions { margin-left: 0; }
	.flat-clean-collapse {
		position: absolute;
		left: .75rem;
		right: .75rem;
		top: calc(100% + .55rem);
		padding: .75rem;
		border-radius: 1rem;
		background: rgba(255,255,255,.98);
		border: 1px solid rgba(17,24,39,.08);
		box-shadow: 0 18px 42px rgba(15,23,42,.14);
	}
	.flat-clean-links { gap: .35rem; }
	.flat-clean-link { width: 100%; justify-content: flex-start; }
	.flat-clean-credit { display: none !important; }
}
@media (max-width: 575.98px) {
	.flat-clean-header-inner { gap: .45rem; }
	.flat-clean-icon-btn,
	.flat-clean-login { width: 38px; min-height: 38px; }
	.flat-clean-user-trigger { min-height: 38px; padding: .18rem !important; }
	.flat-clean-mobile-panel { grid-template-columns: 1fr; }
}

[data-bs-theme=dark] .flat-clean-header,
[data-bs-theme=dark].flat-theme .flat-clean-header {
	background: rgba(17,24,39,.94) !important;
	border-bottom-color: rgba(255,255,255,.08) !important;
	box-shadow: 0 10px 30px rgba(0,0,0,.22) !important;
}
[data-bs-theme=dark] .flat-clean-brand-link,
[data-bs-theme=dark] .flat-clean-link,
[data-bs-theme=dark] .flat-clean-user-head strong { color: #fff !important; }
[data-bs-theme=dark] .flat-clean-icon-btn,
[data-bs-theme=dark] .flat-clean-login,
[data-bs-theme=dark] .flat-clean-user-trigger,
[data-bs-theme=dark] .flat-clean-collapse,
[data-bs-theme=dark] .flat-clean-dropdown,
[data-bs-theme=dark] .flat-clean-user-menu {
	background: rgba(31,41,55,.96) !important;
	border-color: rgba(255,255,255,.08) !important;
	color: rgba(255,255,255,.86) !important;
}
[data-bs-theme=dark] .flat-clean-ip,
[data-bs-theme=dark] .flat-clean-mobile-panel a,
[data-bs-theme=dark] .flat-clean-user-head {
	background: rgba(245,158,11,.10) !important;
	border-color: rgba(245,158,11,.18) !important;
}
[data-bs-theme=dark] .flat-clean-user-info small,
[data-bs-theme=dark] .flat-clean-user-head span { color: rgba(255,255,255,.62) !important; }

/* Home news right sidebar: Leaf-style compact activity cards rebuilt for Flat */
.flat-home-news-layout {
  margin-top: .25rem;
}
.flat-home-news-sidebar {
  position: sticky;
  top: 96px;
  display: grid;
  gap: 18px;
}
.flat-news-side-card {
  position: relative;
  overflow: hidden;
  border: 1px solid var(--flat-border, rgba(17,24,39,.08));
  border-radius: 20px;
  background: rgba(255,255,255,.96);
  box-shadow: 0 18px 45px rgba(15, 23, 42, .08);
  padding: 18px;
}
.flat-news-side-card::before {
  content: "";
  position: absolute;
  inset: 0 0 auto 0;
  height: 4px;
  background: linear-gradient(90deg, var(--flat-accent, #f59e0b), #f97316);
  opacity: .95;
}
.flat-news-side-head {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 14px;
}
.flat-news-side-head span {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: var(--flat-dark, #111827);
  font-weight: 800;
  letter-spacing: -.015em;
}
.flat-news-side-head span i {
  width: 28px;
  height: 28px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 10px;
  background: var(--flat-accent-soft, #fff7ed);
  color: var(--flat-accent-dark, #d97706);
}
.flat-news-side-head small {
  flex: 0 0 auto;
  padding: 5px 9px;
  border-radius: 999px;
  background: rgba(245,158,11,.1);
  color: var(--flat-accent-dark, #d97706);
  font-size: 11px;
  font-weight: 800;
}
.flat-side-ranking-list,
.flat-side-activity-list {
  position: relative;
  z-index: 1;
  display: grid;
  gap: 10px;
}
.flat-side-ranking-row,
.flat-side-activity-row {
  display: grid;
  align-items: center;
  gap: 10px;
  min-width: 0;
  padding: 10px;
  border: 1px solid rgba(17,24,39,.07);
  border-radius: 16px;
  background: rgba(248,250,252,.82);
  color: inherit;
  text-decoration: none !important;
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease, background .2s ease;
}
.flat-side-ranking-row {
  grid-template-columns: 42px 52px minmax(0,1fr) auto;
}
.flat-side-activity-row {
  grid-template-columns: 44px minmax(0,1fr) auto;
}
.flat-side-ranking-row:hover,
.flat-side-activity-row:hover {
  transform: translateY(-2px);
  border-color: rgba(245,158,11,.3);
  background: #fff;
  box-shadow: 0 12px 30px rgba(15,23,42,.08);
}
.flat-side-place {
  width: 42px;
  height: 42px;
  border-radius: 14px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 13px;
  font-weight: 900;
  color: var(--flat-accent-dark, #d97706);
  background: var(--flat-accent-soft, #fff7ed);
}
.flat-side-ranking-row.flat-side-rank-1 {
  background: linear-gradient(135deg, rgba(255,247,237,.98), rgba(255,255,255,.98));
  border-color: rgba(245,158,11,.24);
}
.flat-side-ranking-row.flat-side-rank-1 .flat-side-place {
  color: #fff;
  background: linear-gradient(135deg, #f59e0b, #f97316);
  box-shadow: 0 10px 20px rgba(245,158,11,.28);
}
.flat-side-avatar {
  position: relative;
  width: 52px;
  height: 52px;
  border-radius: 16px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #fff;
  box-shadow: inset 0 0 0 1px rgba(17,24,39,.07);
}
.flat-side-avatar img {
  width: 42px;
  height: 42px;
  border-radius: 12px;
  object-fit: cover;
  image-rendering: pixelated;
}
.flat-side-avatar > i {
  position: absolute;
  top: -10px;
  right: -8px;
  width: 23px;
  height: 23px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #f59e0b;
  color: #fff;
  font-size: 11px;
  box-shadow: 0 8px 18px rgba(245,158,11,.3);
}
.flat-side-avatar-soft {
  width: 44px;
  height: 44px;
  border-radius: 14px;
  background: var(--flat-accent-soft, #fff7ed);
}
.flat-side-avatar-soft img {
  width: 36px;
  height: 36px;
  border-radius: 11px;
}
.flat-side-copy {
  min-width: 0;
  display: grid;
  gap: 2px;
}
.flat-side-copy strong {
  display: block;
  max-width: 100%;
  color: var(--flat-dark, #111827);
  font-size: 13.5px;
  font-weight: 900;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.flat-side-copy small {
  display: block;
  max-width: 100%;
  color: var(--flat-muted, #6b7280);
  font-size: 11.5px;
  font-weight: 650;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.flat-side-ranking-row b,
.flat-side-activity-row b {
  color: var(--flat-accent-dark, #d97706);
  font-size: 12.5px;
  font-weight: 900;
  white-space: nowrap;
}
.flat-side-store-icon {
  width: 44px;
  height: 44px;
  border-radius: 14px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  background: linear-gradient(135deg, #f59e0b, #f97316);
  box-shadow: 0 12px 24px rgba(245,158,11,.2);
}
.flat-side-purchase-row em {
  width: 28px;
  height: 28px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #16a34a;
  background: rgba(34,197,94,.12);
  font-size: 12px;
  font-style: normal;
}
.flat-side-empty {
  position: relative;
  z-index: 1;
  min-height: 92px;
  display: grid;
  place-items: center;
  gap: 6px;
  text-align: center;
  padding: 18px;
  border: 1px dashed rgba(17,24,39,.14);
  border-radius: 16px;
  background: rgba(248,250,252,.7);
  color: var(--flat-muted, #6b7280);
  font-weight: 700;
}
.flat-side-empty i {
  color: var(--flat-accent-dark, #d97706);
  font-size: 22px;
}
.flat-news-side-discord iframe {
  position: relative;
  z-index: 1;
  max-height: 360px;
}

@media (max-width: 991.98px) {
  .flat-home-news-sidebar {
    position: static;
    grid-template-columns: 1fr;
  }
  .flat-home-news-layout {
    row-gap: 22px;
  }
}
@media (max-width: 575.98px) {
  .flat-news-side-card {
    padding: 15px;
    border-radius: 18px;
  }
  .flat-news-side-head {
    flex-direction: column;
    align-items: flex-start;
  }
  .flat-side-ranking-row {
    grid-template-columns: 38px 46px minmax(0,1fr);
  }
  .flat-side-ranking-row b {
    grid-column: 3;
    justify-self: start;
  }
  .flat-side-place { width: 38px; height: 38px; }
  .flat-side-avatar { width: 46px; height: 46px; }
  .flat-side-avatar img { width: 38px; height: 38px; }
  .flat-side-activity-row {
    grid-template-columns: 42px minmax(0,1fr);
  }
  .flat-side-activity-row b,
  .flat-side-purchase-row em {
    grid-column: 2;
    justify-self: start;
  }
}
[data-bs-theme=dark] .flat-news-side-card {
  background: rgba(17,24,39,.94);
  border-color: rgba(255,255,255,.08);
  box-shadow: 0 18px 45px rgba(0,0,0,.25);
}
[data-bs-theme=dark] .flat-news-side-head span,
[data-bs-theme=dark] .flat-side-copy strong {
  color: #f8fafc;
}
[data-bs-theme=dark] .flat-side-ranking-row,
[data-bs-theme=dark] .flat-side-activity-row,
[data-bs-theme=dark] .flat-side-empty {
  background: rgba(15,23,42,.72);
  border-color: rgba(255,255,255,.08);
}
[data-bs-theme=dark] .flat-side-ranking-row:hover,
[data-bs-theme=dark] .flat-side-activity-row:hover {
  background: rgba(30,41,59,.85);
  border-color: rgba(245,158,11,.32);
}
[data-bs-theme=dark] .flat-side-avatar {
  background: rgba(15,23,42,.9);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.08);
}
[data-bs-theme=dark] .flat-side-copy small,
[data-bs-theme=dark] .flat-side-empty {
  color: #94a3b8;
}


/* =========================================================
   Final store + news layout polish
   - Larger store/product cards
   - Safe image fitting for uploaded product/category images
   - News displayed as large vertical list cards
   ========================================================= */
.flat-store-category-grid,
.flat-product-grid {
  --bs-gutter-x: 1.25rem;
  --bs-gutter-y: 1.25rem;
}
.flat-store-category-grid > [class*="col-"],
.flat-product-grid > [class*="col-"] {
  display: flex;
}
.flat-store-product-card,
.flat-store-category-card {
  min-height: 100%;
  border-radius: 1.45rem !important;
  box-shadow: 0 18px 42px rgba(154, 52, 18, .10);
}
.flat-store-product-card .card-body {
  min-height: 270px;
  padding: 1.15rem 1.15rem 1.2rem;
}
.flat-store-category-card .card-body {
  padding: 1.15rem;
}
.flat-product-media {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  aspect-ratio: 4 / 3;
  min-height: 240px;
  padding: 1.1rem;
  background:
    radial-gradient(circle at 18% 15%, rgba(245, 158, 11, .18), transparent 13rem),
    linear-gradient(145deg, #fff7ed, #ffffff);
}
.flat-product-media img {
  width: 100%;
  height: 100%;
  max-height: 250px;
  object-fit: contain !important;
  object-position: center center !important;
  border-radius: 1.05rem;
  filter: drop-shadow(0 18px 24px rgba(15, 23, 42, .12));
}
.flat-store-product-card:hover .flat-product-media img {
  transform: scale(1.025);
}
.flat-category-media {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  aspect-ratio: 16 / 10;
  min-height: 190px;
  padding: .9rem;
  background:
    radial-gradient(circle at 20% 10%, rgba(245, 158, 11, .18), transparent 12rem),
    linear-gradient(145deg, #fff7ed, #ffffff);
}
.flat-category-media img {
  width: 100%;
  height: 100%;
  max-height: 205px;
  object-fit: contain !important;
  object-position: center center !important;
  border-radius: 1rem;
  filter: drop-shadow(0 16px 22px rgba(15, 23, 42, .10));
}
.flat-store-category-card:hover .flat-category-media img {
  transform: scale(1.025);
}
.flat-store-product-card h3,
.flat-store-category-card h3 {
  font-size: 1.12rem;
  line-height: 1.25;
  font-weight: 950;
}
.flat-product-description,
.flat-store-category-card p {
  font-size: .92rem;
  line-height: 1.55;
}
.flat-product-price-line .price,
.flat-store-product-card .price {
  font-size: 1.2rem;
  font-weight: 950;
}
.flat-store-product-card .btn {
  min-height: 46px;
  font-size: .94rem;
}
.flat-product-detail-media {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 430px;
}
.flat-product-detail-media img {
  width: 100%;
  height: 100%;
  max-height: 520px;
  object-fit: contain !important;
  object-position: center center !important;
  background: rgba(255,255,255,.55);
}

/* News: large stacked list cards instead of compact grid */
.flat-news-grid,
.flat-news-grid-home,
.col-md-12 .flat-news-grid-home,
.flat-news-grid-blog {
  display: flex !important;
  flex-direction: column !important;
  grid-template-columns: none !important;
  gap: 1.15rem !important;
}
.flat-news-card {
  display: grid !important;
  grid-template-columns: minmax(240px, 34%) minmax(0, 1fr) !important;
  min-height: 235px;
  border-radius: 1.45rem;
  overflow: hidden;
}
.flat-news-media {
  width: 100%;
  height: 100%;
  min-height: 235px;
  aspect-ratio: auto;
}
.flat-news-media img {
  object-fit: cover;
  object-position: center center;
}
.flat-news-body {
  padding: 1.25rem 1.35rem;
  justify-content: center;
}
.flat-news-title {
  min-height: 0;
  font-size: clamp(1.35rem, 2vw, 1.85rem);
  line-height: 1.12;
  -webkit-line-clamp: 2;
}
.flat-news-excerpt {
  font-size: .98rem;
  -webkit-line-clamp: 3;
}
.flat-news-footer {
  margin-top: .25rem;
}

@media (min-width: 1200px) {
  .flat-product-grid > .col-xl-4,
  .flat-store-category-grid > .col-xl-4 {
    flex: 0 0 auto;
    width: 33.333333%;
  }
}
@media (max-width: 991.98px) {
  .flat-product-media { min-height: 220px; }
  .flat-category-media { min-height: 175px; }
  .flat-product-detail-media { min-height: 320px; }
  .flat-news-card {
    grid-template-columns: 260px minmax(0, 1fr) !important;
    min-height: 220px;
  }
  .flat-news-media { min-height: 220px; }
}
@media (max-width: 767.98px) {
  .flat-store-product-card .card-body { min-height: auto; }
  .flat-product-media { min-height: 210px; aspect-ratio: 1 / 1; }
  .flat-category-media { min-height: 165px; }
  .flat-product-detail-media { min-height: 260px; }
  .flat-news-card {
    display: flex !important;
    flex-direction: column !important;
    min-height: 0;
  }
  .flat-news-media {
    min-height: 210px;
    aspect-ratio: 16 / 9;
  }
  .flat-news-body { padding: 1rem; }
  .flat-news-title { font-size: 1.25rem; }
}
@media (max-width: 420px) {
  .flat-product-media { min-height: 190px; padding: .85rem; }
  .flat-category-media { min-height: 150px; }
  .flat-news-media { min-height: 190px; }
}

[data-bs-theme=dark] .flat-product-media,
[data-bs-theme=dark] .flat-category-media,
[data-bs-theme=dark] .flat-product-detail-media {
  background:
    radial-gradient(circle at 18% 15%, rgba(245, 158, 11, .16), transparent 13rem),
    rgba(31, 41, 55, .92) !important;
}
[data-bs-theme=dark] .flat-product-detail-media img {
  background: rgba(17, 24, 39, .34);
}

/* Keep product badges inside enlarged media cards */
.flat-store-product-card .flat-product-media .stock,
.flat-store-product-card .flat-product-media .discount,
.flat-store-product-card.card-product .stock,
.flat-store-product-card.card-product .discount {
  top: .85rem !important;
  z-index: 4;
  box-shadow: 0 10px 22px rgba(15, 23, 42, .16);
}
.flat-store-product-card .flat-product-media .stock,
.flat-store-product-card.card-product .stock {
  left: .85rem !important;
  right: auto !important;
  border-radius: 999px !important;
}
.flat-store-product-card .flat-product-media .discount,
.flat-store-product-card.card-product .discount {
  right: .85rem !important;
  left: auto !important;
  width: 3.2rem;
  height: 3.2rem;
  border-radius: 999px !important;
  background: #ef4444 !important;
}


/* =========================================================
   Profile + header visual effects polish
   - Clean header rain layer
   - Heartbeat logo
   - Rainbow credit CTA
   - Neon profile cards
   ========================================================= */
.flat-rain-header,
.header-banner {
  position: relative;
  overflow: hidden;
  isolation: isolate;
}
.flat-clean-header-inner,
.header-banner-content {
  position: relative;
  z-index: 2;
}
.flat-header-rain,
.flat-rain-header::after,
.header-banner::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 1;
  opacity: .24;
  background-image:
    linear-gradient(165deg, transparent 0 44%, rgba(245, 158, 11, .42) 46%, rgba(255, 255, 255, .55) 49%, transparent 54%),
    linear-gradient(165deg, transparent 0 42%, rgba(251, 191, 36, .28) 45%, transparent 51%),
    linear-gradient(165deg, transparent 0 47%, rgba(255, 255, 255, .34) 49%, transparent 55%);
  background-size: 96px 150px, 140px 210px, 70px 120px;
  animation: flatHeaderRain 1.45s linear infinite;
  mask-image: linear-gradient(90deg, transparent, #000 12%, #000 88%, transparent);
}
.header-banner::after {
  opacity: .18;
}
@keyframes flatHeaderRain {
  from { background-position: 0 -180px, 40px -240px, 15px -140px; }
  to { background-position: -70px 180px, -30px 240px, -45px 140px; }
}
.flat-logo-heartbeat {
  transform-origin: center;
  animation: flatLogoHeartbeat 2.2s ease-in-out infinite;
  will-change: transform, filter;
}
@keyframes flatLogoHeartbeat {
  0%, 38%, 64%, 100% { transform: scale(1); filter: drop-shadow(0 10px 18px rgba(245, 158, 11, .16)); }
  44% { transform: scale(1.075); filter: drop-shadow(0 12px 26px rgba(245, 158, 11, .36)); }
  52% { transform: scale(.985); }
  58% { transform: scale(1.045); filter: drop-shadow(0 14px 30px rgba(239, 68, 68, .22)); }
}
.flat-rainbow-credit,
.flat-clean-credit.flat-rainbow-credit,
.flat-global-action.is-highlight,
.flat-quick-card.is-accent,
.flat-ranking-cta {
  position: relative;
  overflow: hidden;
  color: #fff !important;
  border: 0 !important;
  background: linear-gradient(90deg, #f97316, #facc15, #22c55e, #06b6d4, #6366f1, #ec4899, #f97316) !important;
  background-size: 320% 100% !important;
  animation: flatRainbowShift 4.2s linear infinite;
  box-shadow: 0 0 0 1px rgba(255,255,255,.35) inset, 0 12px 30px rgba(236, 72, 153, .22), 0 0 22px rgba(245, 158, 11, .28) !important;
}
.flat-rainbow-credit::before,
.flat-clean-credit.flat-rainbow-credit::before,
.flat-global-action.is-highlight::before,
.flat-quick-card.is-accent::before,
.flat-ranking-cta::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(120deg, transparent 0 32%, rgba(255,255,255,.34) 45%, transparent 58%);
  transform: translateX(-120%);
  animation: flatShineSweep 2.8s ease-in-out infinite;
}
.flat-rainbow-credit > *,
.flat-clean-credit.flat-rainbow-credit > *,
.flat-global-action.is-highlight > *,
.flat-quick-card.is-accent > *,
.flat-ranking-cta > * {
  position: relative;
  z-index: 1;
}
.flat-rainbow-credit:hover,
.flat-clean-credit.flat-rainbow-credit:hover,
.flat-quick-card.is-accent:hover {
  transform: translateY(-2px) scale(1.015);
  box-shadow: 0 0 0 1px rgba(255,255,255,.45) inset, 0 18px 40px rgba(236, 72, 153, .28), 0 0 28px rgba(245, 158, 11, .34) !important;
}
@keyframes flatRainbowShift {
  0% { background-position: 0% 50%; }
  100% { background-position: 320% 50%; }
}
@keyframes flatShineSweep {
  0%, 42% { transform: translateX(-125%); }
  70%, 100% { transform: translateX(125%); }
}
.flat-neon-profile-card,
.flat-neon-soft-card {
  position: relative;
  overflow: hidden;
  border: 1px solid rgba(245, 158, 11, .28) !important;
  border-radius: 1.45rem !important;
  background: linear-gradient(180deg, rgba(255,255,255,.96), rgba(255,247,237,.9)) !important;
  box-shadow:
    0 18px 45px rgba(154, 52, 18, .11),
    0 0 0 1px rgba(245, 158, 11, .16),
    0 0 24px rgba(245, 158, 11, .20) !important;
  animation: flatNeonPulse 3s ease-in-out infinite;
}
.flat-neon-profile-card::before,
.flat-neon-soft-card::before {
  content: "";
  position: absolute;
  inset: -2px;
  border-radius: inherit;
  padding: 2px;
  background: linear-gradient(135deg, rgba(245,158,11,.9), rgba(236,72,153,.64), rgba(34,211,238,.68), rgba(245,158,11,.9));
  background-size: 260% 260%;
  animation: flatNeonBorder 5.5s linear infinite;
  opacity: .5;
  pointer-events: none;
  -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
}
.flat-profile-sidebar > *,
.flat-profile-main-card > * {
  position: relative;
  z-index: 2;
}
.flat-profile-neon-orb {
  position: absolute;
  width: 140px;
  height: 140px;
  border-radius: 50%;
  pointer-events: none;
  filter: blur(24px);
  opacity: .34;
  z-index: 0;
}
.flat-profile-neon-orb.is-one {
  top: -45px;
  right: -45px;
  background: #f59e0b;
}
.flat-profile-neon-orb.is-two {
  bottom: 18%;
  left: -60px;
  background: #22d3ee;
}
.flat-profile-sidebar-head {
  position: relative;
  overflow: hidden;
  border-radius: 1.45rem 1.45rem 0 0;
  background:
    radial-gradient(circle at 20% 0%, rgba(236,72,153,.16), transparent 10rem),
    radial-gradient(circle at 80% 0%, rgba(34,211,238,.16), transparent 10rem),
    linear-gradient(180deg, #fff7ed, #ffffff) !important;
}
.flat-profile-sidebar-head .avatar {
  border: 3px solid rgba(255,255,255,.9);
  box-shadow: 0 16px 32px rgba(245, 158, 11, .24), 0 0 0 6px rgba(245, 158, 11, .10) !important;
  animation: flatAvatarGlow 3.4s ease-in-out infinite;
}
.flat-profile-role-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: .4rem;
}
.flat-profile-balance-glow {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: .75rem;
  padding: .8rem .9rem;
  border-radius: 1rem;
  background: rgba(255,255,255,.82);
  border: 1px solid rgba(245, 158, 11, .2);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.6), 0 12px 26px rgba(245, 158, 11, .12);
}
.flat-profile-balance-glow span {
  display: inline-flex;
  align-items: center;
  gap: .35rem;
  font-size: .78rem;
  font-weight: 900;
  color: #92400e;
}
.flat-profile-balance-glow strong {
  color: #111827;
  font-size: 1rem;
  font-weight: 950;
}
.flat-profile-mini-actions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .5rem;
}
.flat-profile-mini-actions a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .38rem;
  min-height: 38px;
  padding: .45rem .55rem;
  border-radius: .9rem;
  background: #fff;
  border: 1px solid rgba(17,24,39,.08);
  color: #374151;
  font-weight: 900;
  font-size: .78rem;
  text-decoration: none !important;
  box-shadow: 0 10px 20px rgba(15,23,42,.06);
}
.flat-sidebar-link {
  border-radius: .85rem;
  margin: .15rem .75rem;
  border-left: 0 !important;
}
.flat-sidebar-link:hover,
.flat-sidebar-link.active,
.flat-profile-sidebar form .sidebar-link:hover {
  background: linear-gradient(90deg, #fff7ed, #ffffff) !important;
  color: var(--flat-accent-dark) !important;
  box-shadow: 0 10px 22px rgba(245, 158, 11, .10);
}
.flat-profile-sidebar-title {
  margin: .45rem .75rem .15rem !important;
  border-radius: .85rem;
  background: rgba(255,247,237,.78) !important;
}
@keyframes flatNeonPulse {
  0%, 100% { box-shadow: 0 18px 45px rgba(154, 52, 18, .11), 0 0 0 1px rgba(245, 158, 11, .16), 0 0 18px rgba(245, 158, 11, .16) !important; }
  50% { box-shadow: 0 22px 55px rgba(154, 52, 18, .15), 0 0 0 1px rgba(236, 72, 153, .24), 0 0 34px rgba(236, 72, 153, .24) !important; }
}
@keyframes flatNeonBorder {
  0% { background-position: 0% 50%; }
  100% { background-position: 260% 50%; }
}
@keyframes flatAvatarGlow {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-2px); }
}
@media (max-width: 767.98px) {
  .flat-header-rain,
  .flat-rain-header::after,
  .header-banner::after { opacity: .16; }
  .flat-logo-heartbeat { animation-duration: 2.8s; }
  .flat-profile-mini-actions { grid-template-columns: 1fr; }
}
@media (prefers-reduced-motion: reduce) {
  .flat-header-rain,
  .flat-rain-header::after,
  .header-banner::after,
  .flat-logo-heartbeat,
  .flat-rainbow-credit,
  .flat-rainbow-credit::before,
  .flat-global-action.is-highlight,
  .flat-global-action.is-highlight::before,
  .flat-quick-card.is-accent,
  .flat-quick-card.is-accent::before,
  .flat-ranking-cta,
  .flat-ranking-cta::before,
  .flat-neon-profile-card,
  .flat-neon-soft-card,
  .flat-neon-profile-card::before,
  .flat-neon-soft-card::before,
  .flat-profile-sidebar-head .avatar {
    animation: none !important;
  }
}
[data-bs-theme=dark] .flat-neon-profile-card,
[data-bs-theme=dark] .flat-neon-soft-card {
  background: linear-gradient(180deg, rgba(17,24,39,.96), rgba(31,41,55,.9)) !important;
  border-color: rgba(245, 158, 11, .28) !important;
  box-shadow: 0 20px 50px rgba(0,0,0,.26), 0 0 26px rgba(245,158,11,.16) !important;
}
[data-bs-theme=dark] .flat-profile-sidebar-head {
  background:
    radial-gradient(circle at 20% 0%, rgba(236,72,153,.14), transparent 10rem),
    radial-gradient(circle at 80% 0%, rgba(34,211,238,.12), transparent 10rem),
    linear-gradient(180deg, rgba(31,41,55,.98), rgba(17,24,39,.96)) !important;
}
[data-bs-theme=dark] .flat-profile-balance-glow,
[data-bs-theme=dark] .flat-profile-mini-actions a {
  background: rgba(15,23,42,.72);
  border-color: rgba(255,255,255,.08);
  color: #f8fafc;
}
[data-bs-theme=dark] .flat-profile-balance-glow strong { color: #f8fafc; }
[data-bs-theme=dark] .flat-profile-balance-glow span { color: #fbbf24; }


/* =========================================================
   Epiklava final card/font/announcement polish
   - Soft premium card system
   - Theme-matched announcement bar
   - Better font rhythm
   - Balanced effects and dark mode
   ========================================================= */
:root {
  --flat-font-main: Inter, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  --flat-font-display: "Segoe UI", Inter, Roboto, Helvetica, Arial, sans-serif;
  --flat-accent: #f59e0b;
  --flat-accent-dark: #d97706;
  --flat-accent-soft: #fff7ed;
  --flat-dark: #111827;
  --flat-muted: #6b7280;
  --flat-border: rgba(17, 24, 39, .08);
  --flat-card-radius: 22px;
  --flat-card-shadow: 0 18px 45px rgba(15, 23, 42, .085);
  --flat-card-shadow-hover: 0 26px 62px rgba(15, 23, 42, .13);
}
html, body {
  font-family: var(--flat-font-main) !important;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
h1, h2, h3, h4, h5, h6,
.flat-page-title,
.flat-section-title,
.flat-card-title,
.flat-news-title,
.flat-product-title,
.flat-category-title,
.flat-news-side-head span,
.card-title {
  font-family: var(--flat-font-display) !important;
  letter-spacing: -.025em;
  font-weight: 850;
}
.flat-page-title { font-size: clamp(1.7rem, 3vw, 2.6rem); line-height: 1.06; }
.flat-section-title { font-size: clamp(1.2rem, 2vw, 1.75rem); line-height: 1.15; }
.flat-card-title,
.flat-product-title,
.flat-news-title { font-size: clamp(1.05rem, 1.35vw, 1.28rem); line-height: 1.22; }
.text-muted, .flat-muted, .flat-product-description, .flat-news-excerpt { color: var(--flat-muted) !important; }

/* Announcement / broadcast bar: replaces the mismatched background with theme-safe amber navy */
.broadcast,
.flat-announcement,
.announcement-bar,
.header-announcement {
  min-height: 46px !important;
  height: auto !important;
  display: flex;
  align-items: center;
  overflow: hidden;
  background:
    radial-gradient(circle at 9% 50%, rgba(245, 158, 11, .28), transparent 28%),
    linear-gradient(135deg, rgba(17, 24, 39, .97), rgba(31, 41, 55, .95)) !important;
  border-bottom: 1px solid rgba(245, 158, 11, .22) !important;
  box-shadow: 0 12px 34px rgba(15, 23, 42, .16);
  color: #fff7ed !important;
}
.broadcast::before,
.flat-announcement::before {
  content: "✦";
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  margin-left: max(14px, calc((100vw - 1320px) / 2));
  margin-right: 10px;
  border-radius: 999px;
  background: rgba(245, 158, 11, .18);
  color: #fbbf24;
  box-shadow: 0 0 0 1px rgba(245,158,11,.22) inset;
  flex: 0 0 auto;
}
.broadcast-item {
  padding-top: 10px !important;
  padding-bottom: 10px !important;
  font-weight: 800;
  letter-spacing: -.01em;
}
.broadcast-link,
.flat-announcement-link,
.broadcast a,
.flat-announcement a {
  color: #fff7ed !important;
  text-decoration: none !important;
  text-shadow: 0 1px 8px rgba(0,0,0,.22);
}
.broadcast-link:hover,
.flat-announcement a:hover { color: #fcd34d !important; }

/* Universal premium card language */
.flat-card,
.flat-card-soft,
.flat-product-card,
.flat-store-product-card,
.flat-category-card,
.flat-store-category-card,
.flat-news-card,
.flat-sidebar-card,
.flat-news-side-card,
.flat-profile-card,
.flat-profile-main-card,
.flat-profile-sidebar,
.flat-ticket-card,
.flat-forum-card,
.flat-credit-card,
.flat-tebex-card,
.flat-help-card,
.flat-empty-state,
.flat-page .card:not(.flat-unstyled-card) {
  border-radius: var(--flat-card-radius) !important;
  border: 1px solid var(--flat-border) !important;
  background: rgba(255, 255, 255, .94) !important;
  box-shadow: var(--flat-card-shadow) !important;
  backdrop-filter: blur(10px);
}
.flat-card:hover,
.flat-product-card:hover,
.flat-store-product-card:hover,
.flat-category-card:hover,
.flat-store-category-card:hover,
.flat-news-card:hover,
.flat-sidebar-card:hover,
.flat-news-side-card:hover,
.flat-help-card:hover,
.flat-page .card.card-hover:hover {
  transform: translateY(-4px);
  border-color: rgba(245, 158, 11, .28) !important;
  box-shadow: var(--flat-card-shadow-hover) !important;
}
.flat-card,
.flat-product-card,
.flat-store-product-card,
.flat-category-card,
.flat-store-category-card,
.flat-news-card,
.flat-sidebar-card,
.flat-news-side-card,
.flat-help-card,
.flat-page .card.card-hover {
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease, background-color .22s ease;
}

/* Product cards: larger, clean, and image-safe */
.flat-product-grid { --bs-gutter-x: 1.45rem; --bs-gutter-y: 1.45rem; }
.flat-store-product-card {
  overflow: hidden !important;
  min-height: 100%;
}
.flat-store-product-card .card-body {
  padding: 1.25rem 1.25rem 1.28rem !important;
  min-height: 282px !important;
  display: flex;
  flex-direction: column;
}
.flat-product-media {
  min-height: 255px !important;
  aspect-ratio: 4 / 3 !important;
  padding: 1.25rem !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background:
    radial-gradient(circle at 50% 32%, rgba(245, 158, 11, .20), transparent 42%),
    linear-gradient(180deg, #fff7ed, #ffffff) !important;
  border-bottom: 1px solid rgba(245, 158, 11, .12);
}
.flat-product-media img,
.flat-product-detail-media img {
  width: 100% !important;
  height: 100% !important;
  max-height: 270px !important;
  object-fit: contain !important;
  object-position: center center !important;
  border-radius: 1rem;
  filter: drop-shadow(0 18px 24px rgba(15, 23, 42, .12));
}
.flat-store-product-card:hover .flat-product-media img { transform: scale(1.018) !important; }
.flat-store-product-card .flat-product-title,
.flat-store-product-card h3 {
  margin-top: .65rem !important;
  margin-bottom: .55rem !important;
  font-weight: 900 !important;
  color: var(--flat-dark) !important;
}
.flat-product-description {
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  min-height: 4.2em;
  line-height: 1.48 !important;
  font-size: .93rem !important;
}
.flat-product-price-line,
.flat-store-product-card .flat-product-price-line {
  margin-top: .7rem;
  padding: .72rem .8rem;
  border-radius: 1rem;
  background: linear-gradient(135deg, rgba(255,247,237,.9), rgba(255,255,255,.92));
  border: 1px solid rgba(245,158,11,.14);
}
.flat-product-price-line .price,
.flat-store-product-card .price {
  color: #c2410c !important;
  font-size: 1.28rem !important;
  font-weight: 950 !important;
}
.flat-product-price-line .old-price,
.flat-store-product-card .old-price {
  color: #9ca3af !important;
  text-decoration-thickness: 2px;
}
.flat-store-product-card .btn {
  min-height: 48px !important;
  border-radius: 1rem !important;
  font-weight: 900 !important;
  box-shadow: 0 12px 24px rgba(245, 158, 11, .16);
}
.flat-store-product-card .flat-product-media .stock,
.flat-store-product-card .flat-product-media .discount,
.flat-store-product-card.card-product .stock,
.flat-store-product-card.card-product .discount {
  z-index: 3 !important;
  box-shadow: 0 12px 22px rgba(15,23,42,.14);
}

/* Category cards */
.flat-store-category-card {
  overflow: hidden !important;
}
.flat-store-category-card .card-body {
  padding: 1.2rem !important;
}
.flat-category-media {
  min-height: 205px !important;
  padding: 1rem !important;
  background:
    radial-gradient(circle at 45% 25%, rgba(245, 158, 11, .18), transparent 42%),
    linear-gradient(180deg, #fff7ed, #ffffff) !important;
  border-bottom: 1px solid rgba(245, 158, 11, .12);
}
.flat-category-media img {
  object-fit: contain !important;
  object-position: center !important;
  max-height: 218px !important;
}
.flat-category-title,
.flat-store-category-card .card-title {
  color: var(--flat-dark) !important;
  font-weight: 900 !important;
  margin: .45rem 0 .4rem !important;
}
.flat-store-category-card p {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  min-height: 2.9em;
}
.flat-category-card-foot {
  margin-top: auto;
  padding-top: .85rem;
  border-top: 1px solid rgba(17,24,39,.06);
}

/* News cards: premium vertical list */
.flat-news-grid,
.flat-news-grid-home,
.flat-news-grid-blog,
.col-md-12 .flat-news-grid-home {
  display: flex !important;
  flex-direction: column !important;
  gap: 1.2rem !important;
}
.flat-news-card {
  display: grid !important;
  grid-template-columns: minmax(250px, 34%) minmax(0, 1fr) !important;
  gap: 0 !important;
  min-height: 250px;
  padding: 12px;
  overflow: hidden !important;
}
.flat-news-media {
  min-height: 226px !important;
  height: 100% !important;
  border-radius: 18px !important;
  overflow: hidden !important;
  background: #fff7ed !important;
}
.flat-news-media img {
  object-fit: cover !important;
  object-position: center !important;
}
.flat-news-body {
  padding: 1.15rem 1.35rem 1.15rem 1.5rem !important;
  justify-content: center;
}
.flat-news-meta { gap: .45rem .55rem !important; }
.flat-news-category,
.flat-news-date,
.flat-news-stat {
  border-radius: 999px !important;
  padding: .38rem .62rem !important;
  background: rgba(255,247,237,.85) !important;
  border: 1px solid rgba(245,158,11,.14) !important;
  color: #92400e !important;
  font-weight: 800 !important;
}
.flat-news-title {
  color: var(--flat-dark) !important;
  font-weight: 920 !important;
  text-decoration: none !important;
}
.flat-news-title:hover { color: var(--flat-accent-dark) !important; }
.flat-news-excerpt {
  line-height: 1.68 !important;
  font-size: .98rem !important;
}
.flat-news-read {
  border-radius: 999px !important;
  padding: .62rem .9rem !important;
  background: linear-gradient(135deg, #f59e0b, #f97316) !important;
  color: #fff !important;
  box-shadow: 0 12px 25px rgba(245, 158, 11, .22);
}
.flat-news-read:hover {
  transform: translateY(-2px);
  box-shadow: 0 16px 30px rgba(245, 158, 11, .28);
}

/* Right sidebar cards beside news */
.flat-home-news-sidebar { gap: 1.15rem !important; }
.flat-news-side-card {
  padding: 1.1rem !important;
  border-radius: 22px !important;
}
.flat-news-side-card::before {
  height: 5px !important;
  background: linear-gradient(90deg, #f59e0b, #f97316, #fbbf24) !important;
}
.flat-news-side-head span {
  font-size: .98rem;
  font-weight: 900 !important;
}
.flat-news-side-head small {
  color: var(--flat-muted) !important;
  font-weight: 750;
}
.flat-side-ranking-row,
.flat-side-activity-row,
.flat-side-purchase-row {
  border-radius: 1rem !important;
  background: rgba(255,247,237,.58) !important;
  border: 1px solid rgba(245,158,11,.12) !important;
  box-shadow: 0 10px 22px rgba(15,23,42,.045);
}
.flat-side-ranking-row:hover,
.flat-side-activity-row:hover {
  background: #fff !important;
  border-color: rgba(245,158,11,.28) !important;
}
.flat-side-copy strong { color: var(--flat-dark); font-weight: 880 !important; }
.flat-side-copy small { color: var(--flat-muted); }

/* Profile neon: keep it, but slow and soften it */
.flat-neon-profile-card,
.flat-neon-soft-card {
  animation-duration: 4.8s !important;
  box-shadow:
    0 18px 45px rgba(154, 52, 18, .10),
    0 0 0 1px rgba(245, 158, 11, .14),
    0 0 18px rgba(245, 158, 11, .16) !important;
}
.flat-neon-profile-card::before,
.flat-neon-soft-card::before {
  opacity: .34 !important;
  animation-duration: 8s !important;
}
.flat-profile-sidebar-head .avatar { animation-duration: 4.6s !important; }

/* Header effects balance */
.flat-header-rain,
.flat-rain-header::after,
.header-banner::after {
  opacity: .18 !important;
}
.flat-logo-heartbeat {
  animation-duration: 3.2s !important;
  transform-origin: center;
}
.flat-rainbow-credit,
.flat-clean-credit.flat-rainbow-credit,
.flat-profile-mini-actions .flat-rainbow-credit {
  box-shadow: 0 12px 25px rgba(245, 158, 11, .20), 0 0 18px rgba(236, 72, 153, .13) !important;
}
.flat-rainbow-credit:hover,
.flat-clean-credit.flat-rainbow-credit:hover {
  box-shadow: 0 16px 34px rgba(245, 158, 11, .24), 0 0 20px rgba(236, 72, 153, .18) !important;
}

/* Form/table cards also join the same rhythm without breaking actions */
.flat-table-wrap,
.table-responsive,
.flat-form-card,
.flat-checkout-card,
.flat-cart-summary,
.flat-order-summary-card,
.flat-page-hero,
.flat-auth-card {
  border-radius: var(--flat-card-radius) !important;
}
.flat-modern-table thead th,
.table thead th {
  font-weight: 850 !important;
  letter-spacing: -.01em;
}
.form-control,
.form-select,
.input-group-text {
  border-radius: .95rem !important;
}
.btn {
  font-weight: 780;
}

/* Dark mode */
[data-bs-theme=dark] body {
  color: #e5e7eb;
}
[data-bs-theme=dark] .broadcast,
[data-bs-theme=dark] .flat-announcement,
[data-bs-theme=dark] .announcement-bar,
[data-bs-theme=dark] .header-announcement {
  background:
    radial-gradient(circle at 9% 50%, rgba(245, 158, 11, .20), transparent 32%),
    linear-gradient(135deg, rgba(2, 6, 23, .98), rgba(15, 23, 42, .96)) !important;
  border-bottom-color: rgba(245, 158, 11, .22) !important;
}
[data-bs-theme=dark] .flat-card,
[data-bs-theme=dark] .flat-card-soft,
[data-bs-theme=dark] .flat-product-card,
[data-bs-theme=dark] .flat-store-product-card,
[data-bs-theme=dark] .flat-category-card,
[data-bs-theme=dark] .flat-store-category-card,
[data-bs-theme=dark] .flat-news-card,
[data-bs-theme=dark] .flat-sidebar-card,
[data-bs-theme=dark] .flat-news-side-card,
[data-bs-theme=dark] .flat-profile-card,
[data-bs-theme=dark] .flat-profile-main-card,
[data-bs-theme=dark] .flat-profile-sidebar,
[data-bs-theme=dark] .flat-ticket-card,
[data-bs-theme=dark] .flat-forum-card,
[data-bs-theme=dark] .flat-credit-card,
[data-bs-theme=dark] .flat-tebex-card,
[data-bs-theme=dark] .flat-help-card,
[data-bs-theme=dark] .flat-empty-state,
[data-bs-theme=dark] .flat-page .card:not(.flat-unstyled-card) {
  background: rgba(17, 24, 39, .92) !important;
  border-color: rgba(255, 255, 255, .09) !important;
  box-shadow: 0 18px 45px rgba(0, 0, 0, .34) !important;
}
[data-bs-theme=dark] .flat-product-media,
[data-bs-theme=dark] .flat-category-media,
[data-bs-theme=dark] .flat-product-price-line,
[data-bs-theme=dark] .flat-news-category,
[data-bs-theme=dark] .flat-news-date,
[data-bs-theme=dark] .flat-news-stat,
[data-bs-theme=dark] .flat-side-ranking-row,
[data-bs-theme=dark] .flat-side-activity-row,
[data-bs-theme=dark] .flat-side-purchase-row {
  background: rgba(15, 23, 42, .62) !important;
  border-color: rgba(255, 255, 255, .08) !important;
}
[data-bs-theme=dark] .flat-store-product-card h3,
[data-bs-theme=dark] .flat-store-category-card h3,
[data-bs-theme=dark] .flat-news-title,
[data-bs-theme=dark] .flat-side-copy strong,
[data-bs-theme=dark] .flat-category-title {
  color: #f8fafc !important;
}
[data-bs-theme=dark] .flat-product-description,
[data-bs-theme=dark] .flat-news-excerpt,
[data-bs-theme=dark] .flat-side-copy small,
[data-bs-theme=dark] .flat-news-side-head small,
[data-bs-theme=dark] .text-muted {
  color: rgba(226, 232, 240, .72) !important;
}
[data-bs-theme=dark] .flat-news-category,
[data-bs-theme=dark] .flat-news-date,
[data-bs-theme=dark] .flat-news-stat {
  color: #fbbf24 !important;
}
[data-bs-theme=dark] .flat-product-price-line .price,
[data-bs-theme=dark] .flat-store-product-card .price { color: #fbbf24 !important; }

/* Responsive polish */
@media (max-width: 991.98px) {
  .flat-home-news-sidebar { position: static !important; top: auto !important; }
  .flat-news-card { grid-template-columns: 1fr !important; }
  .flat-news-media { min-height: 215px !important; }
  .flat-news-body { padding: 1.1rem .95rem .95rem !important; }
}
@media (max-width: 767.98px) {
  .broadcast,
  .flat-announcement { min-height: 42px !important; }
  .broadcast::before,
  .flat-announcement::before { width: 24px; height: 24px; margin-left: 10px; }
  .broadcast-item { padding-right: 260px !important; font-size: .86rem; }
  .flat-card,
  .flat-store-product-card,
  .flat-store-category-card,
  .flat-news-card,
  .flat-sidebar-card,
  .flat-news-side-card,
  .flat-page .card:not(.flat-unstyled-card) { border-radius: 18px !important; }
  .flat-product-media { min-height: 215px !important; padding: 1rem !important; }
  .flat-category-media { min-height: 170px !important; }
  .flat-store-product-card .card-body { min-height: auto !important; }
  .flat-product-description { min-height: 0; }
  .flat-page-title { font-size: 1.65rem; }
  .flat-logo-heartbeat { animation-duration: 3.8s !important; }
  .flat-header-rain,
  .flat-rain-header::after,
  .header-banner::after { opacity: .10 !important; }
}
@media (max-width: 575.98px) {
  .flat-product-grid,
  .flat-store-category-grid { --bs-gutter-x: .9rem; --bs-gutter-y: .9rem; }
  .flat-product-media { min-height: 198px !important; }
  .flat-news-media { min-height: 190px !important; }
  .flat-news-footer { gap: .65rem; flex-wrap: wrap; }
  .flat-news-read { width: 100%; justify-content: center; }
}
@media (prefers-reduced-motion: reduce) {
  .flat-card,
  .flat-store-product-card,
  .flat-store-category-card,
  .flat-news-card,
  .flat-sidebar-card,
  .flat-news-side-card,
  .flat-logo-heartbeat,
  .flat-rainbow-credit,
  .flat-neon-profile-card,
  .flat-neon-profile-card::before,
  .flat-header-rain,
  .flat-rain-header::after,
  .header-banner::after {
    animation: none !important;
    transition: none !important;
  }
  .flat-card:hover,
  .flat-store-product-card:hover,
  .flat-store-category-card:hover,
  .flat-news-card:hover,
  .flat-sidebar-card:hover,
  .flat-news-side-card:hover { transform: none !important; }
}


/* =========================================================
   Emergency header/card/podium stabilization pass
   ========================================================= */
:root {
  --flat-font-main: Inter, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  --flat-font-display: "Segoe UI", Inter, Roboto, Helvetica, Arial, sans-serif;
  --flat-card-radius-lg: 24px;
  --flat-soft-shadow: 0 20px 55px rgba(15, 23, 42, .10);
}
body { font-family: var(--flat-font-main); text-rendering: optimizeLegibility; -webkit-font-smoothing: antialiased; }
h1,h2,h3,h4,h5,h6,.flat-page-title,.flat-section-title,.flat-card-title,.flat-news-title,.flat-product-title { font-family: var(--flat-font-display); letter-spacing: -.025em; font-weight: 900; }

/* Announcement: premium dark amber bar instead of mismatched color */
.broadcast.flat-announcement,
.flat-announcement,
.announcement-bar,
.header-announcement {
  position: relative;
  z-index: 1040;
  margin: 0 !important;
  padding: .55rem .9rem !important;
  list-style: none !important;
  display: flex !important;
  align-items: center;
  justify-content: center;
  gap: .75rem;
  background: radial-gradient(circle at 10% 20%, rgba(245, 158, 11, .22), transparent 28%), linear-gradient(135deg, rgba(15, 23, 42, .98), rgba(31, 41, 55, .96)) !important;
  border-bottom: 1px solid rgba(245,158,11,.22) !important;
  box-shadow: 0 12px 32px rgba(15,23,42,.18) !important;
  color: #fff7ed !important;
  overflow: hidden;
}
.broadcast.flat-announcement::before {
  content: "";
  width: .55rem;
  height: .55rem;
  border-radius: 999px;
  background: #f59e0b;
  box-shadow: 0 0 0 5px rgba(245,158,11,.14), 0 0 24px rgba(245,158,11,.55);
  flex: 0 0 auto;
}
.broadcast.flat-announcement .broadcast-item { margin: 0 !important; min-width: 0; }
.broadcast.flat-announcement .broadcast-link,
.flat-announcement-link {
  display: block;
  color: #fff7ed !important;
  font-weight: 900;
  letter-spacing: -.01em;
  text-decoration: none !important;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

/* Combo header: reduce visual chaos and keep info blocks aligned */
.header-banner {
  position: relative;
  min-height: 160px !important;
  max-height: 210px;
  overflow: hidden;
  background: #0f172a;
  border-bottom: 1px solid rgba(245,158,11,.14);
}
.header-banner .header-image img { width: 100%; height: 100%; object-fit: cover; opacity: .42; filter: saturate(.9) contrast(1.03); }
.header-banner::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(15,23,42,.45), rgba(15,23,42,.92));
  pointer-events: none;
}
.header-banner-content { position: relative; z-index: 2; min-height: 160px; display: flex; align-items: center; }
.header-banner-logo { max-height: 118px !important; width: auto !important; object-fit: contain; filter: drop-shadow(0 16px 24px rgba(0,0,0,.32)); }
.header-side-icon { width: 46px !important; height: 46px !important; border-radius: 14px !important; background: rgba(255,255,255,.10) !important; border: 1px solid rgba(255,255,255,.10); display: inline-flex; align-items: center; justify-content: center; }
.header-side-icon svg { width: 24px !important; height: 24px !important; }
.header-banner-content a { gap: .65rem; font-weight: 850; }

/* Header/navbar stabilization */
.flat-clean-header.flat-rain-header,
.flat-clean-header {
  position: sticky;
  top: 0;
  z-index: 1030;
  min-height: 68px !important;
  background: linear-gradient(135deg, rgba(15,23,42,.96), rgba(30,41,59,.94)) !important;
  color: #f8fafc;
  border-bottom: 1px solid rgba(245,158,11,.18) !important;
  box-shadow: 0 18px 42px rgba(2,6,23,.22) !important;
  backdrop-filter: blur(16px);
}
.flat-clean-header .container-xl { max-width: 1480px; width: 100%; }
.flat-clean-header-inner { min-height: 68px !important; gap: .65rem !important; position: relative; z-index: 2; }
.flat-header-rain,
.flat-rain-header::after { opacity: .16 !important; pointer-events: none !important; }
.flat-clean-collapse { flex: 1 1 auto; min-width: 0; }
.flat-clean-links { align-items: center; gap: .26rem !important; min-width: 0; flex-wrap: nowrap; }
.flat-clean-link {
  min-height: 40px !important;
  padding: .52rem .66rem !important;
  border-radius: 12px !important;
  color: rgba(248,250,252,.86) !important;
  font-size: .86rem !important;
  line-height: 1.1 !important;
  font-weight: 850 !important;
  white-space: nowrap;
}
.flat-clean-link .nav-link-icon { color: #f59e0b !important; margin-right: .36rem !important; }
.flat-clean-link:hover,
.flat-clean-links .nav-item.active .flat-clean-link {
  color: #fff !important;
  background: rgba(245,158,11,.13) !important;
  box-shadow: inset 0 0 0 1px rgba(245,158,11,.24);
}
.flat-clean-actions { gap: .42rem !important; flex: 0 0 auto; align-items: center; }
.flat-clean-ip,
.flat-clean-icon-btn,
.flat-clean-credit,
.flat-clean-login,
.flat-clean-register,
.flat-clean-user-trigger {
  min-height: 40px !important;
  border-radius: 13px !important;
  border: 1px solid rgba(255,255,255,.10) !important;
  background: rgba(255,255,255,.075) !important;
  color: #fff !important;
  box-shadow: none !important;
}
.flat-clean-icon-btn,
.flat-clean-login { width: 40px !important; min-width: 40px; }
.flat-clean-ip { max-width: 170px; padding: .48rem .72rem !important; }
.flat-clean-ip span { max-width: 125px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.flat-clean-user-trigger { padding: .24rem .42rem !important; }
.flat-clean-user-info strong { color: #fff !important; max-width: 98px; }
.flat-clean-user-info small { color: rgba(255,255,255,.62) !important; }
.flat-clean-cart-count { top: -7px !important; right: -7px !important; }
.flat-clean-dropdown,
.flat-clean-user-menu { border-radius: 18px !important; border: 1px solid rgba(245,158,11,.16) !important; box-shadow: 0 22px 52px rgba(2,6,23,.22) !important; overflow: hidden; }

/* Rainbow credit CTA as premium card/button */
.flat-rainbow-credit,
.flat-clean-credit.flat-rainbow-credit,
.flat-podium-credit-cta.flat-rainbow-credit {
  position: relative !important;
  isolation: isolate;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  gap: .48rem;
  min-height: 42px !important;
  padding: .5rem .92rem !important;
  border-radius: 15px !important;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.18) !important;
  background: linear-gradient(135deg, #0f172a, #111827 54%, #431407) !important;
  box-shadow: 0 12px 28px rgba(245,158,11,.18), inset 0 0 0 1px rgba(245,158,11,.18) !important;
  text-decoration: none !important;
  transform: translateZ(0);
}
.flat-rainbow-credit::before,
.flat-clean-credit.flat-rainbow-credit::before {
  content: "";
  position: absolute;
  inset: -2px;
  z-index: -2;
  background: linear-gradient(90deg, #ff004c, #ff7a00, #ffe600, #00ff85, #00c3ff, #7a5cff, #ff00c8, #ff004c);
  background-size: 300% 100%;
  animation: flatRainbowBorder 2.7s linear infinite;
}
.flat-rainbow-credit::after,
.flat-clean-credit.flat-rainbow-credit::after {
  content: "";
  position: absolute;
  inset: 2px;
  z-index: -1;
  border-radius: 13px;
  background: linear-gradient(135deg, rgba(15,23,42,.98), rgba(17,24,39,.96));
}
.flat-rainbow-credit i { color: #fbbf24 !important; filter: drop-shadow(0 0 8px rgba(251,191,36,.45)); }
.flat-rainbow-text,
.flat-rainbow-credit span:not(.shopping-cart-count) {
  font-weight: 950 !important;
  letter-spacing: -.015em;
  background: linear-gradient(90deg, #ff2d55, #ff9500, #ffeb3b, #32d74b, #00c7ff, #7c4dff, #ff2d55);
  background-size: 280% 100%;
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent !important;
  -webkit-text-fill-color: transparent;
  animation: flatRainbowText 1.8s linear infinite;
  text-shadow: 0 0 18px rgba(255,255,255,.12);
  white-space: nowrap;
}
.flat-rainbow-credit:hover { transform: translateY(-2px); box-shadow: 0 18px 34px rgba(245,158,11,.26), 0 0 28px rgba(255,0,200,.14) !important; }
@keyframes flatRainbowText { 0% { background-position: 0% 50%; } 100% { background-position: 280% 50%; } }
@keyframes flatRainbowBorder { 0% { background-position: 0% 50%; } 100% { background-position: 300% 50%; } }

/* Big all-time podium */
.flat-alltime-podium-showcase {
  position: relative;
  overflow: hidden;
  padding: clamp(1.1rem, 2.5vw, 1.75rem);
  border-radius: 28px;
  border: 1px solid rgba(245,158,11,.18);
  background: radial-gradient(circle at 15% 10%, rgba(245,158,11,.20), transparent 34%), radial-gradient(circle at 82% 14%, rgba(251,191,36,.16), transparent 34%), linear-gradient(135deg, rgba(255,255,255,.96), rgba(255,247,237,.92));
  box-shadow: 0 24px 70px rgba(154,52,18,.12);
}
.flat-alltime-podium-showcase::before { content:""; position:absolute; inset:0; pointer-events:none; background: linear-gradient(90deg, transparent, rgba(255,255,255,.38), transparent); opacity:.45; }
.flat-alltime-podium-head { position:relative; z-index:1; display:flex; align-items:flex-start; justify-content:space-between; gap:1rem; margin-bottom:1.35rem; }
.flat-podium-eyebrow { display:inline-flex; align-items:center; gap:.5rem; padding:.35rem .72rem; border-radius:999px; background:rgba(245,158,11,.12); color:#b45309; font-weight:950; font-size:.78rem; }
.flat-alltime-podium-head h2 { margin:.55rem 0 .25rem; font-size:clamp(1.45rem, 2.4vw, 2.25rem); }
.flat-alltime-podium-head p { margin:0; color:var(--flat-muted); font-weight:650; max-width:650px; }
.flat-alltime-podium-grid { position:relative; z-index:1; display:grid; grid-template-columns: minmax(0, .92fr) minmax(0, 1.14fr) minmax(0, .92fr); gap:1rem; align-items:end; }
.flat-alltime-podium-card { position:relative; min-height:290px; display:flex; flex-direction:column; align-items:center; justify-content:flex-end; gap:.6rem; padding:1rem; border-radius:24px; border:1px solid rgba(17,24,39,.08); background:rgba(255,255,255,.88); box-shadow:0 18px 48px rgba(15,23,42,.09); text-decoration:none !important; color:inherit; overflow:hidden; transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease; }
.flat-alltime-podium-card::after { content:""; position:absolute; inset:auto 14px 0; height:86px; border-radius:24px 24px 0 0; background:linear-gradient(180deg, rgba(245,158,11,.18), rgba(245,158,11,.06)); z-index:0; }
.flat-alltime-podium-card:hover { transform:translateY(-5px); border-color:rgba(245,158,11,.34); box-shadow:0 28px 72px rgba(154,52,18,.16); }
.flat-alltime-rank-1 { min-height:335px; background:linear-gradient(180deg, rgba(255,251,235,.98), rgba(255,255,255,.92)); border-color:rgba(245,158,11,.34); box-shadow:0 24px 70px rgba(245,158,11,.18); }
.flat-alltime-rank-badge { position:absolute; top:14px; left:14px; z-index:2; padding:.34rem .7rem; border-radius:999px; background:#111827; color:#fff; font-weight:950; box-shadow:0 10px 22px rgba(15,23,42,.14); }
.flat-alltime-crown { position:absolute; top:14px; right:14px; z-index:2; width:38px; height:38px; border-radius:14px; display:inline-flex; align-items:center; justify-content:center; color:#fff; background:linear-gradient(135deg,#f59e0b,#f97316); box-shadow:0 14px 26px rgba(245,158,11,.28); }
.flat-alltime-skin { position:relative; z-index:1; display:flex; align-items:flex-end; justify-content:center; height:172px; width:100%; }
.flat-alltime-rank-1 .flat-alltime-skin { height:205px; }
.flat-alltime-skin img { max-height:100%; max-width:82%; object-fit:contain; image-rendering:pixelated; filter:drop-shadow(0 18px 18px rgba(15,23,42,.18)); }
.flat-alltime-info { position:relative; z-index:1; width:100%; padding:.82rem; border-radius:18px; background:rgba(255,255,255,.88); border:1px solid rgba(17,24,39,.07); text-align:center; }
.flat-alltime-info strong,.flat-alltime-info span,.flat-alltime-info small { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.flat-alltime-info strong { font-size:1.02rem; font-weight:950; color:var(--flat-dark); }
.flat-alltime-info span { margin-top:.25rem; color:#b45309; font-weight:950; }
.flat-alltime-info small { margin-top:.16rem; color:var(--flat-muted); font-weight:750; }
.flat-alltime-list { position:relative; z-index:1; margin-top:1rem; display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:.65rem; }
.flat-alltime-list-row { display:grid; grid-template-columns:auto 40px minmax(0,1fr) auto; align-items:center; gap:.55rem; padding:.65rem; border-radius:16px; background:rgba(255,255,255,.78); border:1px solid rgba(17,24,39,.07); color:inherit; text-decoration:none !important; }
.flat-alltime-list-row span { color:#b45309; font-weight:950; }
.flat-alltime-list-row img { width:40px; height:40px; border-radius:12px; image-rendering:pixelated; }
.flat-alltime-list-row strong { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-weight:900; }
.flat-alltime-list-row b { color:#b45309; white-space:nowrap; font-size:.82rem; }

/* Monthly top 3 bonus badges */
.flat-side-bonus,
.flat-monthly-bonus { display:inline-flex !important; width:max-content; align-items:center; gap:.25rem; margin-top:.28rem; padding:.22rem .48rem; border-radius:999px; font-size:.72rem !important; line-height:1; font-weight:950 !important; font-style:normal; letter-spacing:.01em; }
.flat-side-bonus-rank-1,.flat-monthly-mini-card.rank-1 .flat-monthly-bonus { background:linear-gradient(90deg,#f59e0b,#fde047); color:#422006; box-shadow:0 8px 18px rgba(245,158,11,.22); }
.flat-side-bonus-rank-2,.flat-monthly-mini-card.rank-2 .flat-monthly-bonus { background:linear-gradient(90deg,#94a3b8,#e5e7eb); color:#111827; }
.flat-side-bonus-rank-3,.flat-monthly-mini-card.rank-3 .flat-monthly-bonus { background:linear-gradient(90deg,#f97316,#fed7aa); color:#431407; }
.flat-side-bonus-muted { background:rgba(107,114,128,.10); color:#6b7280; }
.flat-side-copy .flat-side-bonus { white-space:nowrap; overflow:visible; text-overflow:clip; }
.flat-side-ranking-row { grid-template-columns:42px 52px minmax(0,1fr) auto !important; }

/* Universal card polish override */
.flat-card,
.flat-product-card,
.flat-store-product-card,
.flat-store-category-card,
.flat-category-card,
.flat-news-card,
.flat-sidebar-card,
.flat-news-side-card,
.flat-profile-sidebar,
.flat-empty-state,
.flat-trust-card,
.flat-stat-card,
.flat-mode-card,
.flat-cart-card,
.flat-cart-summary-card {
  border-radius: 22px !important;
  border-color: rgba(17,24,39,.08) !important;
  box-shadow: var(--flat-soft-shadow) !important;
}
.flat-product-card:hover,
.flat-store-product-card:hover,
.flat-store-category-card:hover,
.flat-news-card:hover,
.flat-news-side-card:hover,
.flat-trust-card:hover,
.flat-stat-card:hover { transform:translateY(-3px); border-color:rgba(245,158,11,.30) !important; box-shadow:0 26px 65px rgba(154,52,18,.14) !important; }
.flat-product-media,
.flat-store-product-card .flat-product-media { min-height:240px !important; background: radial-gradient(circle at 50% 35%, rgba(245,158,11,.16), transparent 46%), linear-gradient(180deg,#fff7ed,#fff) !important; }
.flat-product-media img { object-fit:contain !important; object-position:center !important; }
.flat-news-card { grid-template-columns:minmax(240px,34%) 1fr !important; padding:16px !important; gap:22px !important; }
.flat-news-media { border-radius:18px !important; overflow:hidden; background:#fff7ed; }
.flat-news-media img { object-fit:cover; }

@media (max-width: 1320px) {
  .flat-clean-link { padding-left:.5rem !important; padding-right:.5rem !important; font-size:.82rem !important; }
  .flat-clean-link .nav-link-icon { margin-right:.25rem !important; }
  .flat-clean-ip { display:none !important; }
}
@media (max-width: 1199.98px) {
  .flat-clean-header { min-height:64px !important; }
  .flat-clean-header-inner { min-height:64px !important; }
  .flat-clean-collapse { order: 5; flex-basis:100%; }
  .flat-clean-links { padding:.65rem 0 .85rem; align-items:stretch; }
  .flat-clean-link { width:100%; justify-content:flex-start; }
  .flat-clean-actions { margin-left:auto; }
}
@media (max-width: 991.98px) {
  .header-banner { min-height:120px !important; }
  .header-banner-content { min-height:120px; }
  .header-banner-logo { max-height:86px !important; }
  .flat-alltime-podium-head { flex-direction:column; }
  .flat-alltime-podium-grid { grid-template-columns:1fr; align-items:stretch; }
  .flat-alltime-podium-card,.flat-alltime-rank-1 { min-height:285px; }
  .flat-alltime-list { grid-template-columns:1fr 1fr; }
}
@media (max-width: 767.98px) {
  .broadcast.flat-announcement { justify-content:flex-start; padding:.5rem .75rem !important; }
  .flat-clean-credit { display:none !important; }
  .flat-clean-actions { gap:.32rem !important; }
  .flat-news-card { grid-template-columns:1fr !important; }
  .flat-news-media { min-height:190px; }
  .flat-product-media,.flat-store-product-card .flat-product-media { min-height:210px !important; }
}
@media (max-width: 575.98px) {
  .header-banner { min-height:104px !important; }
  .header-banner-content { min-height:104px; }
  .header-banner-logo { max-height:70px !important; }
  .flat-clean-icon-btn,.flat-clean-login { width:38px !important; min-width:38px; }
  .flat-alltime-podium-showcase { border-radius:20px; padding:1rem; }
  .flat-alltime-list { grid-template-columns:1fr; }
  .flat-side-ranking-row { grid-template-columns:38px 46px minmax(0,1fr) !important; }
  .flat-side-ranking-row b { grid-column:3; justify-self:start; }
}
[data-bs-theme=dark] .flat-alltime-podium-showcase,
[data-bs-theme=dark] .flat-card,
[data-bs-theme=dark] .flat-product-card,
[data-bs-theme=dark] .flat-store-product-card,
[data-bs-theme=dark] .flat-store-category-card,
[data-bs-theme=dark] .flat-category-card,
[data-bs-theme=dark] .flat-news-card,
[data-bs-theme=dark] .flat-sidebar-card,
[data-bs-theme=dark] .flat-news-side-card,
[data-bs-theme=dark] .flat-profile-sidebar,
[data-bs-theme=dark] .flat-empty-state,
[data-bs-theme=dark] .flat-trust-card,
[data-bs-theme=dark] .flat-stat-card,
[data-bs-theme=dark] .flat-mode-card {
  background: rgba(17,24,39,.92) !important;
  border-color: rgba(255,255,255,.09) !important;
  box-shadow: 0 20px 55px rgba(0,0,0,.35) !important;
  color:#f8fafc !important;
}
[data-bs-theme=dark] .flat-alltime-info,
[data-bs-theme=dark] .flat-alltime-list-row { background:rgba(15,23,42,.78); border-color:rgba(255,255,255,.08); }
[data-bs-theme=dark] .flat-alltime-info strong,
[data-bs-theme=dark] .flat-alltime-list-row strong { color:#fff; }
[data-bs-theme=dark] .flat-alltime-podium-head p,
[data-bs-theme=dark] .flat-alltime-info small { color:#94a3b8; }
@media (prefers-reduced-motion: reduce) {
  .flat-logo-heartbeat,
  .flat-rainbow-credit,
  .flat-rainbow-credit::before,
  .flat-rainbow-text,
  .flat-profile-neon,
  .flat-clean-header::before,
  .flat-header-rain { animation: none !important; }
}


/* =========================================================
   Header bugfix rebuild v2
   - rain removed
   - combo hero logo/online/discord restored
   - credit animation applied only to existing credit nav text
   - profile dropdown z-index/overflow fixed
   ========================================================= */
.flat-header-rain,
.flat-clean-header::before,
.flat-clean-header::after,
.flat-rain-header::after { display: none !important; animation: none !important; background: none !important; }

.header-banner {
  min-height: 188px !important;
  max-height: none !important;
  overflow: visible !important;
  isolation: isolate;
  background: #0f172a !important;
  border-bottom: 1px solid rgba(245,158,11,.18) !important;
}
.header-banner .header-image { height: 188px !important; position: relative; z-index: 0; }
.header-banner .header-image::after,
.header-banner::after {
  content: "" !important;
  display: block !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  pointer-events: none !important;
  opacity: 1 !important;
  background:
    radial-gradient(circle at 50% 0%, rgba(245,158,11,.14), transparent 34%),
    linear-gradient(180deg, rgba(15,23,42,.30), rgba(15,23,42,.82)) !important;
  animation: none !important;
  mask-image: none !important;
}
.header-banner .header-image img { opacity: .72 !important; filter: saturate(.98) contrast(1.02) brightness(.72) !important; }
.header-banner-content {
  position: absolute !important;
  inset: 0 !important;
  z-index: 3 !important;
  width: 100% !important;
  min-height: 188px !important;
  padding: 1.15rem 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: #fff !important;
  pointer-events: auto !important;
  visibility: visible !important;
  opacity: 1 !important;
}
.header-banner-content .container { position: relative; z-index: 4; }
.header-banner-logo {
  max-height: 126px !important;
  width: auto !important;
  object-fit: contain !important;
  filter: drop-shadow(0 18px 26px rgba(0,0,0,.34)) drop-shadow(0 0 16px rgba(245,158,11,.18));
}
.flat-logo-heartbeat { animation-duration: 4.2s !important; }
.flat-hero-stat {
  align-items: center !important;
  gap: .75rem !important;
  padding: .72rem .9rem !important;
  border-radius: 18px !important;
  color: #fff !important;
  text-decoration: none !important;
  background: rgba(15,23,42,.46) !important;
  border: 1px solid rgba(255,255,255,.12) !important;
  box-shadow: 0 18px 42px rgba(2,6,23,.18) !important;
  backdrop-filter: blur(12px);
  transition: transform .18s ease, border-color .18s ease, background .18s ease;
}
.flat-hero-stat:hover { transform: translateY(-2px); border-color: rgba(245,158,11,.32) !important; background: rgba(15,23,42,.58) !important; }
.flat-hero-discord { justify-content: flex-end !important; text-align: right !important; }
.flat-hero-stat .header-side-icon {
  width: 48px !important;
  height: 48px !important;
  border-radius: 16px !important;
  background: rgba(255,255,255,.13) !important;
  border: 1px solid rgba(255,255,255,.12) !important;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.04);
}
.flat-hero-stat div[style] { color: rgba(255,255,255,.72) !important; font-size: .82rem; font-weight: 850; line-height: 1.1; }
.flat-hero-stat .text-white { font-size: .92rem; font-weight: 950; letter-spacing: -.01em; }

.flat-clean-header {
  position: sticky !important;
  top: 0 !important;
  z-index: 2080 !important;
  min-height: 74px !important;
  overflow: visible !important;
  isolation: auto !important;
  background:
    linear-gradient(90deg, rgba(15,23,42,.98), rgba(30,41,59,.96) 48%, rgba(15,23,42,.98)) !important;
  border-bottom: 1px solid rgba(245,158,11,.20) !important;
  box-shadow: 0 22px 48px rgba(2,6,23,.26) !important;
  backdrop-filter: blur(18px);
}
.flat-clean-header .container-xl { max-width: 1360px !important; }
.flat-clean-header-inner {
  min-height: 74px !important;
  gap: .75rem !important;
  position: relative !important;
  z-index: 2081 !important;
  overflow: visible !important;
}
.flat-clean-collapse {
  min-width: 0 !important;
  flex: 1 1 auto !important;
  overflow: visible !important;
}
.flat-clean-links {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: .36rem !important;
  flex-wrap: nowrap !important;
  min-width: 0 !important;
}
.flat-clean-link {
  min-height: 44px !important;
  padding: .62rem .78rem !important;
  border-radius: 14px !important;
  color: rgba(248,250,252,.90) !important;
  font-size: .88rem !important;
  line-height: 1.05 !important;
  font-weight: 900 !important;
  letter-spacing: -.015em;
  white-space: nowrap !important;
  border: 1px solid transparent !important;
  transition: background .18s ease, border-color .18s ease, transform .18s ease, color .18s ease;
}
.flat-clean-link .nav-link-icon { color: #f59e0b !important; margin-right: .38rem !important; font-size: 1.04rem; }
.flat-clean-link:hover,
.flat-clean-links .nav-item.active .flat-clean-link {
  color: #fff !important;
  background: linear-gradient(135deg, rgba(245,158,11,.18), rgba(245,158,11,.08)) !important;
  border-color: rgba(245,158,11,.30) !important;
  transform: translateY(-1px);
  box-shadow: 0 12px 22px rgba(245,158,11,.10) !important;
}
.flat-clean-link.is-credit-link {
  background: rgba(15,23,42,.42) !important;
  border-color: rgba(245,158,11,.28) !important;
  box-shadow: inset 0 0 0 1px rgba(245,158,11,.08), 0 12px 28px rgba(245,158,11,.08) !important;
}
.flat-rainbow-nav-text {
  font-weight: 1000 !important;
  background: linear-gradient(90deg,#ff2d55,#ff9500,#ffea00,#22c55e,#00c7ff,#7c4dff,#ff2d55);
  background-size: 280% 100%;
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent !important;
  -webkit-text-fill-color: transparent;
  animation: flatRainbowText 1.8s linear infinite;
  text-shadow: none !important;
}
.flat-clean-actions {
  gap: .48rem !important;
  flex: 0 0 auto !important;
  align-items: center !important;
  position: relative !important;
  z-index: 2300 !important;
}
.flat-clean-ip,
.flat-clean-icon-btn,
.flat-clean-login,
.flat-clean-register,
.flat-clean-user-trigger {
  min-height: 43px !important;
  border-radius: 15px !important;
  border: 1px solid rgba(255,255,255,.12) !important;
  background: rgba(255,255,255,.075) !important;
  color: #fff !important;
  box-shadow: 0 12px 26px rgba(2,6,23,.10) !important;
}
.flat-clean-icon-btn,
.flat-clean-login { width: 43px !important; min-width: 43px !important; }
.flat-clean-ip { max-width: 178px !important; padding: .5rem .78rem !important; }
.flat-clean-user-trigger { padding: .24rem .45rem !important; }
.flat-clean-user-info strong { max-width: 105px !important; }
.flat-clean-user,
.flat-clean-user .dropdown,
.navbar .dropdown { position: relative !important; z-index: 2500 !important; }
.flat-clean-user-menu,
.dropdown-menu.flat-clean-user-menu,
.navbar .dropdown-menu {
  z-index: 5000 !important;
  position: absolute !important;
  top: calc(100% + 10px) !important;
  border-radius: 20px !important;
  border: 1px solid rgba(245,158,11,.18) !important;
  box-shadow: 0 28px 72px rgba(0,0,0,.36) !important;
  overflow: hidden !important;
  background: rgba(255,255,255,.98) !important;
  backdrop-filter: blur(18px);
}
.flat-clean-user-menu.show,
.dropdown-menu.show { z-index: 5000 !important; }
.navbar .dropdown-menu-end { right: 0 !important; left: auto !important; }

/* disable old standalone rainbow button look; keep only text animation where old class remains */
.flat-clean-credit.flat-rainbow-credit,
.flat-rainbow-credit:not(.flat-podium-credit-cta):not(.flat-ranking-cta) {
  background: transparent !important;
  border-color: rgba(245,158,11,.24) !important;
  box-shadow: none !important;
}
.flat-clean-credit.flat-rainbow-credit::before,
.flat-clean-credit.flat-rainbow-credit::after,
.flat-rainbow-credit:not(.flat-podium-credit-cta):not(.flat-ranking-cta)::before,
.flat-rainbow-credit:not(.flat-podium-credit-cta):not(.flat-ranking-cta)::after { display: none !important; }

@media (max-width: 1320px) {
  .flat-clean-header .container-xl { max-width: 100% !important; }
  .flat-clean-link { padding-left: .56rem !important; padding-right: .56rem !important; font-size: .82rem !important; }
  .flat-clean-link .nav-link-icon { margin-right: .28rem !important; }
  .flat-clean-ip { display: none !important; }
}
@media (max-width: 1199.98px) {
  .flat-clean-header-inner { min-height: 68px !important; }
  .flat-clean-collapse { order: 5; flex-basis: 100% !important; }
  .flat-clean-collapse.show,
  .flat-clean-collapse.collapsing {
    margin-top: .65rem;
    padding: .75rem;
    border-radius: 20px;
    background: rgba(15,23,42,.98);
    border: 1px solid rgba(245,158,11,.16);
    box-shadow: 0 22px 54px rgba(0,0,0,.24);
  }
  .flat-clean-links { align-items: stretch !important; justify-content: flex-start !important; gap: .42rem !important; flex-wrap: wrap !important; }
  .flat-clean-links .nav-item { width: calc(50% - .21rem); }
  .flat-clean-link { width: 100% !important; justify-content: flex-start !important; }
  .flat-clean-actions { margin-left: auto !important; }
}
@media (max-width: 991.98px) {
  .header-banner { min-height: 132px !important; }
  .header-banner .header-image { height: 132px !important; }
  .header-banner-content { min-height: 132px !important; }
  .header-banner-logo { max-height: 92px !important; }
}
@media (max-width: 767.98px) {
  .flat-clean-links .nav-item { width: 100%; }
  .flat-clean-actions { gap: .34rem !important; }
  .flat-clean-icon-btn,.flat-clean-login { width: 39px !important; min-width: 39px !important; }
  .header-banner { min-height: 108px !important; }
  .header-banner .header-image { height: 108px !important; }
  .header-banner-content { min-height: 108px !important; }
  .header-banner-logo { max-height: 74px !important; }
}
[data-bs-theme=dark] .flat-clean-user-menu,
[data-bs-theme=dark] .dropdown-menu.flat-clean-user-menu,
[data-bs-theme=dark] .navbar .dropdown-menu {
  background: rgba(15,23,42,.98) !important;
  border-color: rgba(245,158,11,.18) !important;
}
@media (prefers-reduced-motion: reduce) {
  .flat-rainbow-nav-text { animation: none !important; }
}
