/* Tabler 1.4 references --tblr-nav-link-font-size but does not define it. */
:root,
[data-bs-theme="dark"],
[data-bs-theme="light"] {
	--tblr-nav-link-font-size: 1rem;
	--admin-v2-body-bg: #111827;
	--admin-v2-navbar-bg: #0b1220;
	--admin-v2-nav-active-bg: rgba(32, 107, 196, 0.28);
	--admin-v2-nav-active-border: #206bc4;
}

html {
	color-scheme: dark;
	background-color: var(--admin-v2-body-bg);
	margin: 0;
	padding: 0;
}

/*
 * Tabler (_root.scss) at ≥992px:
 *   :root { margin-left: calc(100vw - 100%); }
 * Specificity of :root beats `html { margin: 0 }`, so cancel it explicitly.
 */
@media (min-width: 992px) {
	:root,
	:host {
		margin-left: 0;
		margin-right: 0;
	}
}

html,
body {
	background-color: var(--admin-v2-body-bg);
	margin: 0;
	padding: 0;
	max-width: 100%;
}

body {
	min-height: 100%;
}

/*
 * Tabler .page can pick up boxed/vertical-nav paddings in some layouts.
 * Admin v2 is always full-bleed; content width comes from .container-xl only.
 */
.page {
	margin: 0;
	max-width: none;
	width: 100%;
	border-radius: 0;
	overflow-x: clip;
	background-color: var(--admin-v2-body-bg);
	padding-left: 0;
	padding-right: 0;
}

.admin-v2-navbar {
	width: 100%;
	max-width: none;
	margin: 0;
	left: 0;
	right: 0;
	background-color: var(--admin-v2-navbar-bg);
	border-bottom: 1px solid var(--tblr-border-color, rgba(255, 255, 255, 0.1));
	z-index: 1030;
}

.admin-v2-navbar > .container-xl {
	width: 100%;
	max-width: 1320px;
}

.navbar-brand {
	margin-right: 1.25rem;
}

.navbar-brand-text {
	font-size: 1.125rem;
	font-weight: 700;
}

.admin-v2-navbar .navbar-nav {
	gap: 0.15rem;
	align-items: center;
}

.admin-v2-navbar .nav-link {
	font-size: var(--tblr-nav-link-font-size);
	font-weight: 500;
	color: var(--tblr-secondary, #9ca3af);
	border-radius: 0.375rem;
	padding: 0.4rem 0.7rem;
	border: 1px solid transparent;
}

.admin-v2-navbar .nav-link:hover,
.admin-v2-navbar .nav-link:focus {
	color: var(--tblr-body-color, #e5e7eb);
	background-color: rgba(255, 255, 255, 0.05);
}

.admin-v2-navbar .nav-link.active,
.admin-v2-navbar .nav-link[aria-current="page"] {
	color: #fff;
	font-weight: 700;
	background-color: var(--admin-v2-nav-active-bg);
	border-color: var(--admin-v2-nav-active-border);
	box-shadow: inset 0 0 0 1px rgba(32, 107, 196, 0.35);
}

/* Full-page dark veil between MPA navigations (no SPA). */
.admin-v2-nav-veil {
	position: fixed;
	inset: 0;
	z-index: 2000;
	display: flex;
	align-items: center;
	justify-content: center;
	background-color: var(--admin-v2-body-bg);
}

/*
 * Default row hover for all tables.
 * Use real background-color (not only Tabler inset box-shadow): tall rows /
 * overflowing cell content otherwise look "cut off" on the right.
 * Opt out: .table-no-hover. Skip section headers (plans matrix).
 */
.table:not(.table-no-hover) > tbody > tr:not(.table-section-header):hover > * {
	--tblr-table-color-state: var(--tblr-table-hover-color);
	--tblr-table-bg-state: var(--tblr-table-hover-bg);
	background-color: var(--tblr-table-hover-bg);
}

/* Shared v2 table/modal chrome (UP06) */
.page .card-table thead th,
.page table.table thead th {
	text-align: left;
	vertical-align: middle;
}

.page .card > .table-responsive > .table,
.page .card > .card-body.p-0 > .table-responsive > .table {
	margin-bottom: 0;
}

.page .admin-v2-table-card {
	overflow: hidden;
}

.page .modal-footer .btn-list {
	width: 100%;
	justify-content: flex-end;
}
