/* Managani Tabler shell overrides */

:root,
[data-bs-theme="light"],
[data-theme="light"] {
	--kk-sidebar-width: 17rem;
	--kk-header-height: 3.75rem;
	--kk-font-body: "Inter Variable", Inter, system-ui, -apple-system, "Segoe UI", sans-serif;
	--kk-font-mono: "JetBrains Mono Variable", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
	--kk-ink: #080808;
	--kk-paper: #fff6dc;
	--kk-paper-2: #f2dfb5;
	--kk-paper-3: #fffaf0;
	--kk-gold: #ffc400;
	--kk-gold-bright: #ffe760;
	--kk-gold-soft: #fff0a8;
	--kk-gold-deep: #8a5a00;
	--kk-border-ink: var(--kk-ink);
	--kk-shadow-hard: 0.125rem 0.125rem 0 0 var(--kk-border-ink);
	--kk-shadow-hard-lg: 0.1875rem 0.1875rem 0 0 var(--kk-border-ink);
	--kk-bg: color-mix(in srgb, var(--kk-paper) 30%, #ffffff);
	--bg: var(--kk-bg);
	--panel: var(--tblr-bg-surface, #ffffff);
	--panel-solid: var(--tblr-bg-surface, #ffffff);
	--panel2: var(--tblr-bg-surface, #ffffff);
	--panel2b: var(--tblr-bg-surface, #ffffff);
	--panel3: var(--tblr-bg-surface-secondary, #f6f8fb);
	--panel3-dropdown: var(--tblr-bg-surface, #ffffff);
	--panel-elev: #edf1f7;
	--panel-active: #fff7e0;
	--line: var(--tblr-border-color, #dce1e7);
	--line-2: var(--tblr-border-color, #dce1e7);
	--line-strong: #cbd3df;
	--line-soft: #e6eaf0;
	--line-soft-2: #d6dce6;
	--line-soft-3: #dde3eb;
	--line-btn: #cbd3df;
	--line-btn-hover: #b9c3d1;
	--line-divider: #d6dce6;
	--text: var(--tblr-body-color, #182433);
	--text-strong: #0f1724;
	--text-soft: #3b4a5c;
	--text-bright: #182433;
	--text-bright-2: #182433;
	--text-bright-3: #182433;
	--text-bright-4: #182433;
	--text-bright-5: #182433;
	--text-bright-6: #182433;
	--text-bright-7: #182433;
	--text-bright-8: #182433;
	--muted: var(--tblr-muted, #667382);
	--muted-2: #667382;
	--muted-3: #7b8794;
	--brand: var(--kk-gold-deep);
	--brand-strong: #6b4600;
	--brand-border: var(--kk-gold-deep);
	--brand-focus-ring: rgba(255, 196, 0, 0.35);
	--brand-shadow: rgba(255, 196, 0, 0.3);
	--hover: #fff7e0;
	--hover-2: #fdf2d2;
	--hover-3: #fff7e0;
	--hover-5: #fdf2d2;
	--link: var(--kk-gold-deep);
	--on-brand: #ffffff;
	--sidebar-link-text: #3b4a5c;
	--tag-bg: #eef1f5;
	--tag-text: #4b5563;
	--tag-border: #dce1e7;
	--table-hover: rgba(255, 196, 0, 0.08);
	--panel-gradient: var(--tblr-bg-surface, #ffffff);
	--navbar-bg: rgba(255, 255, 255, 0.92);
	--logo-white-display: none;
	--logo-black-display: block;
	--bs-body-font-family: var(--kk-font-body);
	--bs-body-bg: var(--kk-bg);
	--bs-border-color: var(--line);
	--bs-nav-tabs-link-hover-border-color: var(--line-strong);
	--bs-primary: var(--kk-gold-deep);
	--bs-primary-rgb: 138, 90, 0;
	--bs-link-color: var(--kk-gold-deep);
	--bs-link-color-rgb: 138, 90, 0;
	--bs-link-hover-color: var(--kk-ink);
	--bs-link-hover-color-rgb: 8, 8, 8;
	--bs-focus-ring-color: rgba(255, 196, 0, 0.35);
	--tblr-body-bg: var(--kk-bg);
	--tblr-primary: var(--kk-gold-deep);
	--tblr-primary-rgb: 138, 90, 0;
	--tblr-link-color: var(--kk-gold-deep);
	--tblr-link-color-rgb: 138, 90, 0;
	--tblr-link-hover-color: var(--kk-ink);
	--tblr-link-hover-color-rgb: 8, 8, 8;
}

[data-bs-theme="dark"],
[data-theme="dark"] {
	--kk-border-ink: var(--line-strong);
	--kk-shadow-hard: 0.125rem 0.125rem 0 0 rgba(0, 0, 0, 0.55);
	--kk-shadow-hard-lg: 0.1875rem 0.1875rem 0 0 rgba(0, 0, 0, 0.55);
	--kk-bg: var(--tblr-bg-surface-secondary, #151f2c);
	--bg: var(--kk-bg);
	--panel: var(--tblr-bg-surface, #1f2b3a);
	--panel-solid: var(--tblr-bg-surface, #1f2b3a);
	--panel2: #182332;
	--panel2b: #182332;
	--panel3: #223044;
	--panel3-dropdown: #1f2b3a;
	--panel-elev: #243249;
	--panel-active: rgba(255, 196, 0, 0.14);
	--line: rgba(255, 255, 255, 0.12);
	--line-2: rgba(255, 255, 255, 0.14);
	--line-strong: rgba(255, 255, 255, 0.2);
	--line-soft: rgba(255, 255, 255, 0.1);
	--line-soft-2: rgba(255, 255, 255, 0.14);
	--line-soft-3: rgba(255, 255, 255, 0.12);
	--line-btn: rgba(255, 255, 255, 0.18);
	--line-btn-hover: rgba(255, 255, 255, 0.26);
	--line-divider: rgba(255, 255, 255, 0.14);
	--text: var(--tblr-body-color, #dce6f2);
	--text-strong: #ffffff;
	--text-soft: #b9c6d6;
	--text-bright: #f8fafc;
	--text-bright-2: #eef4fb;
	--text-bright-3: #e6eef8;
	--text-bright-4: #dce6f2;
	--text-bright-5: #d6e1ee;
	--text-bright-6: #dce6f2;
	--text-bright-7: #e6eef8;
	--text-bright-8: #eef4fb;
	--muted: var(--tblr-muted, #9ba9bb);
	--muted-2: #a7b4c5;
	--muted-3: #8d9bad;
	--brand: var(--kk-gold);
	--brand-strong: var(--kk-gold-bright);
	--brand-border: rgba(255, 196, 0, 0.7);
	--brand-focus-ring: rgba(255, 196, 0, 0.25);
	--brand-shadow: rgba(255, 196, 0, 0.2);
	--hover: rgba(255, 196, 0, 0.1);
	--hover-2: rgba(255, 255, 255, 0.08);
	--hover-3: rgba(255, 255, 255, 0.06);
	--hover-5: rgba(255, 196, 0, 0.14);
	--link: #ffd84d;
	--on-brand: #080808;
	--sidebar-link-text: #c6d1df;
	--tag-bg: rgba(255, 255, 255, 0.08);
	--tag-text: #c6d1df;
	--tag-border: rgba(255, 255, 255, 0.12);
	--table-hover: rgba(255, 255, 255, 0.05);
	--panel-gradient: var(--tblr-bg-surface, #1f2b3a);
	--navbar-bg: rgba(31, 43, 58, 0.92);
	--logo-white-display: block;
	--logo-black-display: none;
	--bs-body-bg: var(--kk-bg);
	--bs-border-color: var(--line);
	--bs-nav-tabs-link-hover-border-color: var(--line-strong);
	--bs-primary: var(--kk-gold);
	--bs-primary-rgb: 255, 196, 0;
	--bs-link-color: #ffd84d;
	--bs-link-color-rgb: 255, 216, 77;
	--bs-link-hover-color: #f8fafc;
	--bs-link-hover-color-rgb: 248, 250, 252;
	--bs-focus-ring-color: rgba(255, 196, 0, 0.25);
	--tblr-body-bg: var(--kk-bg);
	--tblr-primary: var(--kk-gold);
	--tblr-primary-rgb: 255, 196, 0;
	--tblr-link-color: #ffd84d;
	--tblr-link-color-rgb: 255, 216, 77;
	--tblr-link-hover-color: #f8fafc;
	--tblr-link-hover-color-rgb: 248, 250, 252;
}

[data-bs-theme="dark"] .kk-logo-light,
[data-theme="dark"] .kk-logo-light {
	display: none;
}

[data-bs-theme="dark"] .kk-logo-dark,
[data-theme="dark"] .kk-logo-dark {
	display: block;
}

[data-bs-theme="light"] .kk-logo-dark,
[data-theme="light"] .kk-logo-dark {
	display: none;
}

[data-bs-theme="light"] .kk-logo-light,
[data-theme="light"] .kk-logo-light {
	display: block;
}

body.kk-template1.page {
	background: var(--bg);
	color: var(--text);
	display: block;
	min-height: 100vh;
	overflow: hidden;
}

body.kk-template1 .kk-sidebar {
	background: var(--panel);
	border-right: 0.0625rem solid var(--line);
	bottom: 0;
	box-shadow: none;
	display: flex;
	flex-direction: column;
	left: 0;
	overflow: hidden;
	position: fixed;
	top: 0;
	width: var(--kk-sidebar-width);
	z-index: 1030;
}

body.kk-template1 .kk-sidebar .container-fluid {
	align-items: stretch;
	display: flex;
	flex-direction: column;
	height: 100%;
	min-height: 0;
	padding: 0;
}

body.kk-template1 .kk-sidebar-header {
	align-items: center;
	border-bottom: 0.0625rem solid var(--line);
	display: flex;
	flex: 0 0 var(--kk-header-height);
	gap: 0.75rem;
	min-height: var(--kk-header-height);
	padding: 0 1rem;
	width: 100%;
}

body.kk-template1 .kk-sidebar-brand {
	align-items: center;
	display: inline-flex;
	margin: 0;
	min-width: 0;
	padding: 0;
}

body.kk-template1 .kk-sidebar-brand .managani-wordmark {
	font-size: 1.3rem;
	transform: translateY(0.25rem);
}

body.kk-template1 #sidebar-menu {
	align-items: stretch;
	flex: 1 1 auto;
	min-height: 0;
	overflow-y: auto;
	padding: 0.75rem;
	width: 100%;
}

body.kk-template1 #site-list {
	width: 100%;
}

body.kk-template1 #main-content.page-wrapper {
	display: flex;
	flex-direction: column;
	height: 100vh;
	margin-left: var(--kk-sidebar-width);
	min-height: 0;
	overflow: hidden;
	width: calc(100% - var(--kk-sidebar-width));
}

body.kk-template1 .kk-topnav {
	background: var(--navbar-bg);
	border-bottom: 0.0625rem solid var(--line);
	min-height: var(--kk-header-height);
	padding: 0;
}

body.kk-template1 .kk-topnav .container-fluid {
	min-height: var(--kk-header-height);
}

body.kk-template1 .kk-topnav .navbar-brand {
	align-items: center;
	display: inline-flex;
	margin: 0;
	min-width: 0;
	padding: 0;
}

body.kk-template1 .page-body {
	flex: 1 1 auto;
	margin: 0;
	min-height: 0;
	overflow: auto;
	padding: 1rem 0;
}

body.kk-template1 #page-content {
	max-width: none;
	padding-left: 1rem;
	padding-right: 1rem;
	width: 100%;
}

body.kk-template1 #page-content > main {
	min-width: 0;
}

body.kk-template1 .kk-impersonation-alert {
	position: sticky;
	top: 0;
	z-index: 1060;
}

body.kk-template1 .kk-user-menu {
	background: transparent;
	border: 0;
	color: var(--text);
}

body.kk-template1 .kk-user-menu:hover,
body.kk-template1 .kk-user-menu:focus,
body.kk-template1 .kk-user-menu.show {
	background: var(--hover);
	color: var(--text-strong);
}

body.kk-template1 .notification-bell-btn {
	color: var(--text-soft);
	cursor: pointer;
	position: relative;
}

body.kk-template1 .notification-bell-btn:hover,
body.kk-template1 .notification-bell-btn:focus,
body.kk-template1 .notification-bell-btn:active,
body.kk-template1 .notification-bell-btn.show {
	background: var(--hover);
	color: var(--text-strong);
}

body.kk-template1 .notification-bell-btn .kk-icon {
	color: currentColor;
}

body.kk-template1 .notification-badge {
	background: var(--tblr-danger, #d63939);
	border-radius: 999rem;
	color: #ffffff;
	font-size: 0.625rem;
	font-weight: 600;
	line-height: 1;
	min-width: 1rem;
	padding: 0.15rem 0.25rem;
	position: absolute;
	right: -0.2rem;
	top: -0.2rem;
}

body.kk-template1 .dropdown-menu {
	border: 1px solid var(--line-strong);
	box-shadow: var(--kk-shadow-hard);
}

body.kk-template1 .site-embed-key-group.input-group > .form-control,
body.kk-template1 .site-url-add-group.input-group > .form-control {
	border-bottom-right-radius: 0 !important;
	border-top-right-radius: 0 !important;
}

body.kk-template1 .site-embed-key-group.input-group > .btn,
body.kk-template1 .site-url-add-group.input-group > .btn {
	border-bottom-left-radius: 0 !important;
	border-top-left-radius: 0 !important;
	margin-left: -0.0625rem !important;
}

.kk-auth-page {
	background: var(--tblr-bg-surface, #ffffff);
	background-image: var(--kk-auth-cover-image);
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	min-height: 100vh;
}

.kk-auth-page .kk-auth-shell {
	min-height: 100vh;
	width: 100%;
}

.kk-auth-page .kk-auth-panel {
	background: rgba(255, 250, 240, 0.92);
	backdrop-filter: blur(0.375rem);
	border-right: 0.125rem solid var(--kk-border-ink);
	justify-content: center !important;
	min-height: 100vh;
}

.kk-auth-page .kk-auth-panel.border-primary {
	border-top-color: var(--kk-gold) !important;
}

.kk-auth-page .container-tight {
	margin-bottom: auto !important;
	margin-top: auto !important;
	max-width: 25rem;
}

.kk-auth-page .kk-auth-cover-column {
	background: var(--bg);
	min-height: 100vh;
}

.kk-auth-page .kk-auth-cover {
	background-color: #e5e7eb;
	background-image:
		var(--kk-auth-cover-image),
		linear-gradient(135deg, #f8fafc 0%, #e5e7eb 52%, #fff7ed 100%);
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	position: relative;
}

.kk-auth-page .kk-auth-cover::after {
	background: linear-gradient(90deg, rgba(255, 255, 255, 0.05), rgba(15, 23, 42, 0.18));
	content: "";
	inset: 0;
	position: absolute;
}

[data-bs-theme="dark"] .kk-auth-page,
[data-theme="dark"] .kk-auth-page {
	background: var(--tblr-bg-surface, #1f2937);
	background-image: var(--kk-auth-cover-image);
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
}

[data-bs-theme="dark"] .kk-auth-page .kk-auth-panel,
[data-theme="dark"] .kk-auth-page .kk-auth-panel {
	background: rgba(24, 33, 47, 0.9);
}

[data-bs-theme="dark"] .kk-auth-page .kk-auth-cover,
[data-theme="dark"] .kk-auth-page .kk-auth-cover {
	background-color: #111827;
	background-image:
		var(--kk-auth-cover-image),
		linear-gradient(135deg, #111827 0%, #1f2937 55%, #3f2f1f 100%);
}

[data-bs-theme="dark"] .kk-auth-page .kk-auth-cover::after,
[data-theme="dark"] .kk-auth-page .kk-auth-cover::after {
	background: linear-gradient(90deg, rgba(15, 23, 42, 0.2), rgba(0, 0, 0, 0.35));
}

.kk-auth-page .logo-form .managani-wordmark {
	font-size: 2.2rem;
}

.kk-auth-page .navbar-brand {
	margin: 0;
}

[data-bs-theme="light"] .kk-auth-page .managani-wordmark-light,
[data-theme="light"] .kk-auth-page .managani-wordmark-light {
	color: #050505;
}

.kk-auth-page .form-control {
	font-size: 0.875rem;
}

.kk-auth-page .kk-auth-methods {
	display: flex;
	flex-wrap: wrap;
	gap: 0.75rem;
	margin-bottom: 1.25rem;
}

.kk-auth-page .kk-auth-method-btn {
	align-items: center;
	background: var(--panel);
	border: 0.125rem solid var(--kk-border-ink);
	box-shadow: var(--kk-shadow-hard);
	display: inline-flex;
	flex: 0 0 auto;
	font-size: 0.875rem;
	font-weight: 700;
	justify-content: center;
	min-height: 2.25rem;
	min-width: 8rem;
	padding: 0.45rem 0.8rem;
}

.kk-auth-page .kk-auth-method-btn:hover {
	background: var(--kk-gold-soft);
	border-color: var(--kk-border-ink);
	color: var(--kk-ink);
}

.kk-auth-page .kk-auth-method-btn:active {
	box-shadow: none;
	transform: translate(0.125rem, 0.125rem);
}

[data-bs-theme="dark"] .kk-auth-page .kk-auth-method-btn:hover,
[data-theme="dark"] .kk-auth-page .kk-auth-method-btn:hover {
	background: rgba(255, 196, 0, 0.18);
	color: var(--text-bright);
}

.kk-auth-page .kk-auth-method-btn .kk-icon {
	font-size: 1rem;
	vertical-align: -0.125rem;
}

.kk-auth-page .container-tight:has(.oauth-authorize-page) {
	max-width: 28rem;
}

.oauth-eyebrow {
	color: var(--brand);
	font-size: 0.6875rem;
	font-weight: 800;
	letter-spacing: 0.14em;
	text-transform: uppercase;
}

.oauth-section > h3 {
	color: var(--muted);
	font-size: 0.6875rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.oauth-account-card {
	display: flex;
	align-items: center;
	gap: 0.75rem;
	padding: 0.75rem;
	border: 0.0625rem solid var(--line);
	border-radius: 0.5rem;
	background: var(--panel3);
	box-shadow: var(--kk-shadow-hard);
}

.oauth-account-avatar {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2.5rem;
	height: 2.5rem;
	border-radius: 0.5rem;
	background: var(--kk-gold-soft);
	color: var(--kk-gold-deep);
	font-weight: 800;
}

.oauth-scope-list {
	overflow: hidden;
	border: 0.0625rem solid var(--line);
	border-radius: 0.5rem;
	box-shadow: var(--kk-shadow-hard);
}

.oauth-scope-list .list-group-item {
	position: relative;
	padding: 0.65rem 0.75rem 0.65rem 2.1rem;
	border: 0;
	border-bottom: 0.0625rem solid var(--line);
	background: var(--panel3);
}

.oauth-scope-list .list-group-item:last-child {
	border-bottom: 0;
}

.oauth-scope-list .list-group-item::before {
	position: absolute;
	top: 0.6rem;
	left: 0.8rem;
	color: var(--brand);
	content: "✓";
	font-weight: 800;
}

.oauth-details {
	border: 0.0625rem solid var(--line);
	border-radius: 0.5rem;
	background: var(--panel3);
}

.oauth-details summary {
	padding: 0.65rem 0.75rem;
	color: var(--muted);
	cursor: pointer;
	font-weight: 600;
}

.oauth-details summary:hover {
	color: var(--brand);
}

.oauth-details[open] summary {
	border-bottom: 0.0625rem solid var(--line);
	color: var(--text);
}

.oauth-meta-list {
	display: grid;
	gap: 0.75rem;
	margin: 0;
	padding: 0.75rem;
	list-style: none;
}

.oauth-meta-list code {
	display: block;
	overflow-wrap: anywhere;
	white-space: normal;
}

.kk-theme-label-light {
	display: none;
}

[data-bs-theme="light"] .kk-theme-label-dark,
[data-theme="light"] .kk-theme-label-dark {
	display: none;
}

[data-bs-theme="light"] .kk-theme-label-light,
[data-theme="light"] .kk-theme-label-light {
	display: inline;
}

@media (max-width: 61.99875rem) {
	body.kk-template1.page {
		overflow: auto;
	}

	body.kk-template1 .kk-sidebar {
		border-bottom: 0.0625rem solid var(--line);
		border-right: 0;
		bottom: auto;
		overflow: visible;
		position: sticky;
		width: 100%;
	}

	body.kk-template1 .kk-sidebar .container-fluid {
		height: auto;
	}

	body.kk-template1 #main-content.page-wrapper {
		height: auto;
		margin-left: 0;
		min-height: calc(100vh - var(--kk-header-height));
		overflow: visible;
		width: 100%;
	}

	body.kk-template1 .kk-topnav {
		background: transparent;
		border-bottom: 0;
		left: 0;
		pointer-events: none;
		position: fixed;
		right: 0;
		top: 0;
		z-index: 1040;
	}

	body.kk-template1 .kk-topnav .container-fluid {
		justify-content: flex-end;
		padding-right: 4.25rem;
	}

	body.kk-template1 .kk-topnav .navbar-nav {
		margin-left: auto !important;
		pointer-events: auto;
	}

	body.kk-template1 .page-body {
		overflow: visible;
	}

	.kk-auth-page {
		background-color: var(--tblr-bg-surface, #ffffff);
	}

	.kk-auth-page .kk-auth-panel {
		background: rgba(255, 255, 255, 0.94);
		min-height: 100vh;
	}
}

/* ---- Brand: neo-brutalist component overrides (gold / ink) ---- */
/* This file is only loaded by app, auth, and /admin layouts — never the public portal. */

.btn-primary {
	--bs-btn-bg: var(--kk-gold);
	--bs-btn-color: var(--kk-ink);
	--bs-btn-border-color: var(--kk-ink);
	--bs-btn-border-width: 0.125rem;
	--bs-btn-hover-bg: var(--kk-gold-bright);
	--bs-btn-hover-color: var(--kk-ink);
	--bs-btn-hover-border-color: var(--kk-ink);
	--bs-btn-active-bg: #e5b000;
	--bs-btn-active-color: var(--kk-ink);
	--bs-btn-active-border-color: var(--kk-ink);
	--bs-btn-disabled-bg: var(--kk-gold);
	--bs-btn-disabled-color: var(--kk-ink);
	--bs-btn-disabled-border-color: var(--kk-ink);
	--tblr-btn-bg: var(--kk-gold);
	--tblr-btn-color: var(--kk-ink);
	--tblr-btn-border-color: var(--kk-ink);
	--tblr-btn-border-width: 0.125rem;
	--tblr-btn-hover-bg: var(--kk-gold-bright);
	--tblr-btn-hover-color: var(--kk-ink);
	--tblr-btn-hover-border-color: var(--kk-ink);
	--tblr-btn-active-bg: #e5b000;
	--tblr-btn-active-color: var(--kk-ink);
	--tblr-btn-active-border-color: var(--kk-ink);
	--tblr-btn-disabled-bg: var(--kk-gold);
	--tblr-btn-disabled-color: var(--kk-ink);
	--tblr-btn-disabled-border-color: var(--kk-ink);
	box-shadow: var(--kk-shadow-hard);
}

.btn-primary:active {
	box-shadow: none;
	transform: translate(0.125rem, 0.125rem);
}

.btn-outline-primary {
	--bs-btn-color: var(--brand);
	--bs-btn-border-color: var(--brand);
	--bs-btn-hover-bg: var(--kk-gold);
	--bs-btn-hover-color: var(--kk-ink);
	--bs-btn-hover-border-color: var(--kk-ink);
	--bs-btn-active-bg: var(--kk-gold-bright);
	--bs-btn-active-color: var(--kk-ink);
	--bs-btn-active-border-color: var(--kk-ink);
	--tblr-btn-color: var(--brand);
	--tblr-btn-border-color: var(--brand);
	--tblr-btn-hover-bg: var(--kk-gold);
	--tblr-btn-hover-color: var(--kk-ink);
	--tblr-btn-hover-border-color: var(--kk-ink);
	--tblr-btn-active-bg: var(--kk-gold-bright);
	--tblr-btn-active-color: var(--kk-ink);
	--tblr-btn-active-border-color: var(--kk-ink);
}

/* Tabler's dist ships a late .btn-link rule with a pre-baked blue that
   bypasses --tblr-link-color — re-point it to the brand link tokens. */
.btn-link {
	color: var(--tblr-link-color, var(--link));
}

.btn-link:hover {
	color: var(--tblr-link-hover-color, var(--text-strong));
}

.modal-content {
	border: 0.125rem solid var(--kk-border-ink);
	box-shadow: var(--kk-shadow-hard-lg);
}

.swal2-popup {
	border: 0.125rem solid var(--kk-border-ink);
	box-shadow: var(--kk-shadow-hard-lg);
}

[data-bs-theme="light"] .card,
[data-theme="light"] .card {
	border-color: var(--line-strong);
}

/* Opt-in hard card for hero/stat surfaces */
.kk-card-hard {
	border: 0.125rem solid var(--kk-border-ink) !important;
	box-shadow: var(--kk-shadow-hard-lg) !important;
}

h1,
h2,
.page-title {
	font-weight: 800;
	letter-spacing: -0.02em;
}

h3,
.card-title,
.modal-title {
	font-weight: 750;
	letter-spacing: -0.01em;
}

[data-bs-theme="dark"] .badge.bg-primary,
[data-theme="dark"] .badge.bg-primary,
[data-bs-theme="dark"] .badge.text-bg-primary,
[data-theme="dark"] .badge.text-bg-primary {
	color: var(--kk-ink);
}
