/* Sea Direct visual overrides for client_web only. */

:root {
	--sea-primary: #00A8FF;
	--sea-primary-deep: #0087cc;
	--sea-primary-soft: #e8f7ff;
	--sea-primary-mist: #eef8ff;
	--sea-secondary: #242424;
	--sea-secondary-soft: #f4f4f4;
	--sea-surface: #ffffff;
	--sea-surface-strong: #ffffff;
	--sea-text: #242424;
	--sea-muted: #5f5f5f;
	--sea-border: rgba(74, 74, 74, 0.12);
	--sea-shadow: 0 20px 45px rgba(0, 0, 0, 0.08);
	--sea-shell-gutter: clamp(1.25rem, 2vw, 2rem);
	--sea-shell-inline-padding: max(1.25rem, var(--sea-shell-gutter));
	--sea-section-gap: clamp(1.5rem, 3vw, 2.75rem);
	--sea-panel-padding: clamp(1.5rem, 3vw, 2.5rem);
}

body.auth-theme,
body.portal-theme {
	color: var(--sea-text);
}

body.auth-theme {
	background:
		radial-gradient(circle at top left, rgba(0, 168, 255, 0.22), transparent 34%),
		linear-gradient(135deg, #f8fcff 0%, #ffffff 46%, #f6f6f6 100%);
}

body.portal-theme {
	background:
		radial-gradient(circle at top right, rgba(0, 168, 255, 0.16), transparent 30%),
		linear-gradient(180deg, #fafcfe 0%, #ffffff 58%, #f7f7f7 100%);
}

body.auth-theme .app-wrapper,
body.portal-theme .app-wrapper {
	color: var(--sea-text);
	font-family: "Rubik", "Segoe UI", "Helvetica Neue", sans-serif;
}

body.auth-theme .main-container,
body.portal-theme main.container,
body.portal-theme footer.container {
	padding-left: var(--sea-shell-gutter);
	padding-right: var(--sea-shell-gutter);
}

.app-shell-header {
	background: #ffffff !important;
	border-bottom-color: var(--sea-border) !important;
	box-shadow: 0 8px 30px rgba(0, 0, 0, 0.04);
}

.app-shell-header > .container-fluid,
.app-shell-header .container {
	padding-left: var(--sea-shell-gutter);
	padding-right: var(--sea-shell-gutter);
}

.app-shell-footer {
	border-top-color: var(--sea-border) !important;
	margin-top: var(--sea-section-gap);
}

.brand-lockup {
	min-width: 0;
}

.brand-logo-image {
	height: 54px;
	width: auto;
	display: block;
}

.auth-brand-image {
	max-width: 220px;
	width: 100%;
	height: auto;
}

.auth-brand-image.compact {
	max-width: 160px;
}

.app-wrapper a,
.app-wrapper .text-primary,
.app-wrapper .text-white-800,
.app-wrapper .link-white,
.app-wrapper .btn-link {
	color: var(--sea-primary-deep) !important;
}

.app-wrapper a:hover,
.app-wrapper .btn-link:hover {
	color: var(--sea-primary) !important;
}

.app-wrapper .text-dark,
.app-wrapper h1,
.app-wrapper h2,
.app-wrapper h3,
.app-wrapper h4,
.app-wrapper h5,
.app-wrapper h6,
.app-wrapper strong,
.app-wrapper .h1,
.app-wrapper .h2,
.app-wrapper .h3,
.app-wrapper .h4,
.app-wrapper .h5,
.app-wrapper .h6 {
	color: var(--sea-text) !important;
}

.app-wrapper .text-muted,
.app-wrapper p,
.app-wrapper label,
.app-wrapper li,
.app-wrapper small,
.app-wrapper .form-floating > label {
	color: var(--sea-muted) !important;
	opacity: 1 !important;
}

.app-wrapper .text-white {
	color: var(--sea-text) !important;
}

.btn-primary,
.bg-primary,
.badge.bg-primary-subtle,
.btn-light-primary:hover,
.btn-light-primary:focus,
.btn-light-primary:active {
	background-color: var(--sea-primary) !important;
	border-color: var(--sea-primary) !important;
}

.btn-primary,
.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active {
	color: #ffffff !important;
	box-shadow: 0 12px 24px rgba(0, 168, 255, 0.25);
}

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

.btn-light-primary {
	background: var(--sea-primary-soft) !important;
	border: 1px solid rgba(0, 168, 255, 0.16) !important;
	color: var(--sea-primary-deep) !important;
}

.btn-light-primary:hover,
.btn-light-primary:focus,
.btn-light-primary:active,
.app-wrapper a.btn-light-primary:hover,
.app-wrapper a.btn-light-primary:focus,
.app-wrapper a.btn-light-primary:active {
	background-color: var(--sea-primary) !important;
	border-color: var(--sea-primary) !important;
	color: #ffffff !important;
}

.btn-outline-primary {
	background: transparent !important;
	border-color: rgba(0, 168, 255, 0.38) !important;
	color: var(--sea-primary-deep) !important;
}

.btn-outline-primary:hover,
.btn-outline-primary:focus,
.btn-outline-primary:active {
	background: var(--sea-primary) !important;
	border-color: var(--sea-primary) !important;
	color: #ffffff !important;
}

.btn-light-secondary,
.btn-outline-danger {
	background: #ffffff !important;
	border: 1px solid var(--sea-border) !important;
	color: var(--sea-secondary) !important;
}

.btn-outline-secondary {
	background: #ffffff !important;
	border: 1px solid var(--sea-border) !important;
	color: var(--sea-secondary) !important;
}

.btn-outline-danger:hover,
.btn-light-secondary:hover,
.btn-outline-secondary:hover,
.btn-outline-secondary:focus,
.btn-outline-secondary:active {
	background: var(--sea-secondary-soft) !important;
	border-color: rgba(74, 74, 74, 0.24) !important;
	color: var(--sea-secondary) !important;
}

.sea-breadcrumb-wrap {
	margin-bottom: 0.5rem;
	display: block;
	width: 100%;
	min-width: 0;
}

.sea-breadcrumb {
	margin-bottom: 0;
	padding: 0;
	background: transparent;
	width: auto;
	min-width: max-content;
}

.sea-breadcrumb .breadcrumb-item,
.sea-breadcrumb .breadcrumb-item.active,
.sea-breadcrumb .breadcrumb-item + .breadcrumb-item::before {
	color: var(--sea-muted) !important;
	opacity: 1;
}

.sea-breadcrumb .breadcrumb-item a {
	color: var(--sea-primary-deep) !important;
	font-weight: 500;
}

.sea-table-toolbar-actions {
	min-width: fit-content;
}

.sea-page-heading-row {
	width: 100%;
}

.sea-page-heading-copy {
	min-width: 0;
}

.sea-table-summary {
	text-align: right;
}

.sea-filter-field {
	min-width: 0;
}

.sea-filter-search {
	flex: 1 1 18rem;
}

.sea-filter-rows {
	width: 6rem;
}

.sea-entity-page {
	padding-bottom: 1rem;
}

.sea-entity-side-card {
	position: relative;
	overflow: hidden;
}

.sea-entity-avatar {
	width: 4rem;
	height: 4rem;
	border-radius: 1.25rem;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-weight: 700;
	letter-spacing: 0.08em;
}

.sea-entity-stats {
	display: grid;
	gap: 0.85rem;
}

.sea-entity-stats > div {
	display: flex;
	justify-content: space-between;
	gap: 1rem;
	padding-bottom: 0.75rem;
	border-bottom: 1px solid var(--sea-border);
}

.sea-entity-stats > div:last-child {
	padding-bottom: 0;
	border-bottom: 0;
}

.sea-related-list {
	display: grid;
	gap: 0.75rem;
}

.sea-related-list-item {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 1rem;
	padding: 0.95rem 1rem;
	border: 1px solid var(--sea-border);
	border-radius: 1rem;
	background: linear-gradient(180deg, #ffffff 0%, #fbfdff 100%);
	text-decoration: none;
	transition: transform 0.15s ease, box-shadow 0.15s ease, border-color 0.15s ease;
}

.sea-related-list-item:hover {
	transform: translateY(-1px);
	border-color: rgba(0, 168, 255, 0.22);
	box-shadow: 0 12px 24px rgba(0, 0, 0, 0.05);
	color: inherit !important;
}

.sea-detail-grid {
	row-gap: 1rem;
}

.sea-detail-tile {
	height: 100%;
	padding: 1rem 1.1rem;
	border-radius: 1rem;
	border: 1px solid var(--sea-border);
	background: linear-gradient(180deg, #ffffff 0%, #fafcff 100%);
	display: flex;
	flex-direction: column;
	gap: 0.45rem;
}

.sea-detail-tile > span {
	font-size: 0.8rem;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: var(--sea-muted);
}

.sea-detail-tile > strong {
	font-size: 1rem;
	line-height: 1.45;
	font-weight: 600;
}

@media (max-width: 991.98px) {
	.sea-table-summary {
		text-align: left;
	}
}

.card,
.border.rounded-3,
.form-container,
.main-content-box,
.sign-in-content-bg {
	background: var(--sea-surface);
	border-color: var(--sea-border) !important;
	box-shadow: var(--sea-shadow);
	opacity: 1;
}

.card,
.border.rounded-3 {
	background: var(--sea-surface);
}

.form-content-box .form-container,
.image-content-box .form-container,
.image-contentbox .form-container {
	position: relative;
	background: #ffffff;
}

.form-container {
	padding: var(--sea-panel-padding);
    padding-bottom: 15px!important;
    padding-top: 15px!important;
}

.main-content-box,
.sign-in-content-bg {
	border-radius: 28px;
	overflow: hidden;
	margin-top: var(--sea-section-gap);
	margin-bottom: var(--sea-section-gap);
}

.image-content-box,
.image-contentbox {
	background: #ffffff;
}

.form-content-box {
	background: #ffffff;
}

.app-form .row {
	row-gap: 0.5rem;
}

.app-form .mb-5 {
	margin-bottom: 2.5rem !important;
}

.app-form .mt-4 {
	margin-top: 2rem !important;
}

.app-form .mt-3 {
	margin-top: 1.5rem !important;
}

.app-form .mb-3,
.app-form .form-floating {
	margin-bottom: 1.25rem !important;
}

.form-floating {
	position: relative;
}

.card .card-body,
.border.rounded-3 {
	padding: var(--sea-panel-padding) !important;
}

.alert {
	padding: 1rem 1.125rem;
	margin-bottom: 1.5rem;
}

.custom-forms .form-floating > .form-control,
.custom-forms .form-control {
	border: 1.5px solid rgba(74, 74, 74, 0.24);
	color: var(--sea-text);
	background: var(--sea-surface-strong);
	min-height: 3.75rem;
	border-radius: 14px;
	padding-left: 1rem;
	padding-right: 1rem;
	-webkit-text-fill-color: var(--sea-text);
	opacity: 1;
	caret-color: var(--sea-primary-deep);
	box-shadow: 0 1px 0 rgba(74, 74, 74, 0.03);
}

.form-floating > .form-control {
	padding: 1.625rem 1rem 0.625rem;
}

.form-floating > .form-control::placeholder {
	color: transparent !important;
	opacity: 0 !important;
}

.form-floating > .form-control:focus::placeholder,
.form-floating > .form-control:not(:placeholder-shown)::placeholder {
	color: transparent !important;
}

.form-floating > label {
	padding: 1rem;
	color: var(--sea-muted) !important;
	opacity: 1 !important;
	transform-origin: 0 0;
	left: 0.75rem;
	width: auto;
	height: auto;
	padding-left: 0.35rem;
	padding-right: 0.35rem;
	border-radius: 999px;
}

.form-floating > .form-control:focus,
.form-floating > .form-control:not(:placeholder-shown) {
	padding-top: 1.625rem;
	padding-bottom: 0.625rem;
}

.form-floating > .form-control:focus ~ label,
.form-floating > .form-control:not(:placeholder-shown) ~ label,
.form-floating > .form-control:-webkit-autofill ~ label {
	color: var(--sea-primary-deep) !important;
}

.form-floating > .form-control:-webkit-autofill,
.form-floating > .form-control:-webkit-autofill:hover,
.form-floating > .form-control:-webkit-autofill:focus {
	-webkit-text-fill-color: var(--sea-text);
	transition: background-color 9999s ease-out 0s;
}

.form-floating > .form-control:focus,
.form-control:focus,
.form-check-input:focus {
	border-color: rgba(0, 168, 255, 0.38);
	box-shadow: 0 0 0 0.2rem rgba(0, 168, 255, 0.14);
}

.form-floating > .form-control:not(:focus) {
	border-color: rgba(74, 74, 74, 0.24);
}

.form-check {
	align-items: center;
	gap: 0.75rem;
}

.form-check-input {
	appearance: auto !important;
	-webkit-appearance: checkbox !important;
	width: 1.15rem;
	height: 1.15rem;
	display: inline-block;
	margin-top: 0;
	flex: 0 0 auto;
	border: 1.5px solid rgba(74, 74, 74, 0.45);
	background-color: #ffffff;
	background-image: none;
	opacity: 1 !important;
	accent-color: var(--sea-primary);
	box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.9);
}

.form-check-input:checked {
	background-color: var(--sea-primary);
	border-color: var(--sea-primary);
}

.form-check-input:hover {
	border-color: rgba(0, 168, 255, 0.55);
}

.form-check-label,
.form-label {
	color: var(--sea-text) !important;
}

.form-check-label {
	margin-top: 0 !important;
	line-height: 1.35;
}

.btn {
	padding: 0.85rem 1.35rem;
}

.btn-lg {
	padding: 1rem 1.5rem;
}

.alert-success {
	background: var(--sea-primary-mist);
	border-color: rgba(0, 168, 255, 0.2);
	color: var(--sea-text);
}

.alert-warning {
	background: #f5f5f5;
	border-color: rgba(74, 74, 74, 0.16);
	color: var(--sea-text);
}

.alert-danger {
	background: #f1f1f1;
	border-color: rgba(74, 74, 74, 0.2);
	color: var(--sea-text);
}

.alert a {
	color: var(--sea-primary-deep) !important;
}

.avatar-md {
	background: var(--sea-primary-soft) !important;
	color: var(--sea-primary-deep) !important;
}

.badge.bg-primary-subtle {
	background: var(--sea-primary-soft) !important;
	border: 1px solid rgba(0, 168, 255, 0.14);
	color: var(--sea-primary-deep) !important;
}

.bg-light-primary,
.bg-light-success,
.bg-light-warning {
	background: var(--sea-primary-soft) !important;
}

.text-success,
.text-warning {
	color: var(--sea-primary-deep) !important;
}

@media (max-width: 991.98px) {
	.brand-logo-image {
		height: 46px;
	}

	.auth-brand-image {
		max-width: 180px;
	}

	.main-content-box,
	.sign-in-content-bg {
		border-radius: 20px;
	}

	.form-container,
	.card .card-body,
	.border.rounded-3 {
		padding: 1.25rem !important;
	}
}

/* Portal shell overrides modeled after the ki-admin project dashboard base. */

body.ki-portal-shell-body {
	background: linear-gradient(180deg, #f5fbff 0%, #ffffff 52%, #f4f4f4 100%);
}

body.ki-portal-shell-body nav {
	background: linear-gradient(180deg, #ffffff 0%, #f7fbff 56%, #f0f6fb 100%);
	border-right: 1px solid var(--sea-border);
	box-shadow: 16px 0 36px rgba(10, 37, 64, 0.05);
}

body.ki-portal-shell-body .app-logo {
	background: rgba(255, 255, 255, 0.92);
	border-bottom: 1px solid var(--sea-border);
}

body.ki-portal-shell-body .app-logo .logo {
	width: 100%;
	min-height: 4.5rem;
	padding: 0.9rem 1rem;
	justify-content: flex-start;
	position: relative;
}

body.ki-portal-shell-body .app-logo .logo img {
	height: 46px;
	width: auto;
	object-fit: contain;
}

body.ki-portal-shell-body .app-logo .logo-compact-mark {
	display: none;
	align-items: center;
	justify-content: center;
	width: 2.35rem;
	height: 2.35rem;
	border-radius: 0.9rem;
	background: linear-gradient(135deg, #123867 0%, #0e5cb5 100%);
	color: #ffffff;
	font-size: 0.88rem;
	font-weight: 800;
	letter-spacing: 0.08em;
	box-shadow: 0 10px 18px rgba(14, 92, 181, 0.2);
}

body.ki-portal-shell-body .nav-profile {
	background: linear-gradient(180deg, rgba(0, 168, 255, 0.12), rgba(255, 255, 255, 0));
	border-top: 1px solid rgba(0, 168, 255, 0.08);
	gap: 0.75rem;
}

body.ki-portal-shell-body .main-nav > li > a,
body.ki-portal-shell-body .main-nav > li > ul > li > a {
	color: var(--sea-secondary) !important;
	border-radius: 14px;
}

body.ki-portal-shell-body .main-nav > li + li {
	margin-top: 0.75rem;
}

body.ki-portal-shell-body .main-nav > li > a {
	display: flex;
	align-items: center;
	gap: 0.75rem;
	min-height: 3.25rem;
	padding: 0.8rem 0.95rem;
	font-weight: 700;
	letter-spacing: 0.01em;
	box-shadow: inset 0 0 0 1px rgba(20, 32, 51, 0.03);
}

body.ki-portal-shell-body .main-nav > li > a > span,
body.ki-portal-shell-body .main-nav > li > ul > li > a > span {
	flex: 1 1 auto;
	min-width: 0;
}

body.ki-portal-shell-body .main-nav > li > a i,
body.ki-portal-shell-body .main-nav > li > ul > li > a i {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2rem;
	height: 2rem;
	font-size: 1rem;
	border-radius: 10px;
	background: rgba(14, 92, 181, 0.1);
	color: var(--sea-primary-deep) !important;
	flex-shrink: 0;
}

body.ki-portal-shell-body .main-nav > li > ul {
	margin-top: 0.65rem;
	padding-left: 0.35rem;
}

body.ki-portal-shell-body .main-nav > li > ul > li + li {
	margin-top: 0.35rem;
}

body.ki-portal-shell-body .main-nav > li > ul > li > a {
	display: flex;
	align-items: center;
	gap: 0.65rem;
	padding: 0.7rem 0.85rem;
	min-height: 3rem;
	font-weight: 600;
	background: rgba(255, 255, 255, 0.72);
}

body.ki-portal-shell-body nav.semi-nav .main-nav > li > a,
body.ki-portal-shell-body nav.semi-nav .main-nav > li > ul > li > a {
	justify-content: center;
	padding-left: 0.5rem;
	padding-right: 0.5rem;
	gap: 0;
}

body.ki-portal-shell-body nav.semi-nav .app-logo .logo {
	justify-content: center;
	padding-left: 0.5rem;
	padding-right: 0.5rem;
}

body.ki-portal-shell-body nav.semi-nav .app-logo .logo img {
	display: none;
}

body.ki-portal-shell-body nav.semi-nav .app-logo .logo-compact-mark {
	display: inline-flex;
}

body.ki-portal-shell-body nav.semi-nav .nav-profile {
	justify-content: center;
	padding: 0.75rem 0.4rem !important;
}

body.ki-portal-shell-body nav.semi-nav .nav-profile > .flex-grow-1,
body.ki-portal-shell-body nav.semi-nav .nav-profile .profile-menu-dropdown {
	display: none !important;
}

body.ki-portal-shell-body nav.semi-nav .nav-profile > span.h-45.w-45 {
	margin: 0 auto;
}

body.ki-portal-shell-body nav.semi-nav .main-nav > li > a > span,
body.ki-portal-shell-body nav.semi-nav .main-nav > li > ul > li > a > span,
body.ki-portal-shell-body nav.semi-nav .nav-section-badge {
	display: none;
}

body.ki-portal-shell-body nav.semi-nav .main-nav > li > a i,
body.ki-portal-shell-body nav.semi-nav .main-nav > li > ul > li > a i {
	margin: 0;
	width: 2.25rem;
	height: 2.25rem;
	font-size: 1.05rem;
}

body.ki-portal-shell-body .nav-section-badge {
	margin-left: auto;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 1.8rem;
	height: 1.8rem;
	padding: 0 0.45rem;
	border-radius: 999px;
	background: rgba(14, 92, 181, 0.1);
	font-size: 0.74rem;
	font-weight: 700;
	color: var(--sea-primary-deep);
}

body.ki-portal-shell-body .main-nav > li > a:hover,
body.ki-portal-shell-body .main-nav > li > ul > li > a:hover,
body.ki-portal-shell-body .main-nav > li > ul > li > a.active {
	color: var(--sea-primary-deep) !important;
}

body.ki-portal-shell-body .main-nav > li > a[aria-expanded="true"],
body.ki-portal-shell-body .main-nav > li > a:not(.collapsed),
body.ki-portal-shell-body .main-nav > li.active > a,
body.ki-portal-shell-body .main-nav > li > ul > li.active > a {
	background: linear-gradient(135deg, #123867 0%, #0e5cb5 100%) !important;
	border-color: transparent !important;
	color: #ffffff !important;
	box-shadow: 0 14px 24px rgba(14, 92, 181, 0.2);
}

body.ki-portal-shell-body .main-nav > li > a[aria-expanded="true"] svg,
body.ki-portal-shell-body .main-nav > li > a:not(.collapsed) svg,
body.ki-portal-shell-body .main-nav > li.active > a svg,
body.ki-portal-shell-body .main-nav > li > ul > li.active > a svg,
body.ki-portal-shell-body .main-nav > li > a[aria-expanded="true"] i,
body.ki-portal-shell-body .main-nav > li > a:not(.collapsed) i,
body.ki-portal-shell-body .main-nav > li.active > a i,
body.ki-portal-shell-body .main-nav > li > ul > li.active > a i {
	color: #ffffff !important;
	stroke: #ffffff !important;
}

body.ki-portal-shell-body .main-nav > li > a[aria-expanded="true"] .badge-notification,
body.ki-portal-shell-body .main-nav > li > a:not(.collapsed) .badge-notification {
	background: #ffffff !important;
	color: var(--sea-secondary) !important;
	border-color: var(--sea-secondary) !important;
}

body.ki-portal-shell-body .main-nav > li > a[aria-expanded="true"] .nav-section-badge,
body.ki-portal-shell-body .main-nav > li > a:not(.collapsed) .nav-section-badge {
	background: rgba(255, 255, 255, 0.18);
	color: #ffffff !important;
}

body.ki-portal-shell-body nav .app-nav .main-nav > li:not(.menu-title) ul li.active a::before {
	background-color: #00A8FF !important;
}

body.ki-portal-shell-body .menu-title span {
	color: var(--sea-muted) !important;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

body.ki-portal-shell-body .app-content {
	background: transparent;
	padding-top: 0 !important;
	padding-bottom: 0 !important;
	display: flex;
	flex-direction: column;
	min-height: 100vh;
}

body.ki-portal-shell-body .app-wrapper {
	align-items: stretch;
}

body.ki-portal-shell-body .header-main {
	position: sticky;
	top: 0;
	z-index: 50;
	min-height: 5.4rem;
	padding-left: 0 !important;
	padding-right: 0 !important;
	background: rgba(255, 255, 255, 0.82);
	backdrop-filter: blur(12px);
	border-bottom: 1px solid var(--sea-border);
	box-shadow: 0 10px 28px rgba(10, 37, 64, 0.06);
}

body.ki-portal-shell-body .header-main::before {
	display: none;
}

body.ki-portal-shell-body .app-wrapper .semi-nav ~ .app-content {
	padding-left: var(--semi-nav) !important;
	padding-right: 0 !important;
}

body.ki-portal-shell-body .app-wrapper nav:not(.horizontal-sidebar):not(.semi-nav) ~ .app-content {
	padding-left: var(--sidebar-width) !important;
	padding-right: 0 !important;
}

body.ki-portal-shell-body .app-wrapper .semi-nav ~ .app-content .header-main,
body.ki-portal-shell-body .app-wrapper nav:not(.horizontal-sidebar):not(.semi-nav) ~ .app-content .header-main {
	padding-left: 0 !important;
}

body.ki-portal-shell-body .app-wrapper .semi-nav ~ .app-content footer,
body.ki-portal-shell-body .app-wrapper nav:not(.horizontal-sidebar):not(.semi-nav) ~ .app-content footer {
	padding-left: 0 !important;
	padding-right: 0 !important;
}

body.ki-portal-shell-body .header-main .container-fluid,
body.ki-portal-shell-body footer .container-fluid,
body.ki-portal-shell-body .ki-main-container {
	box-sizing: border-box;
	padding-left: var(--sea-shell-inline-padding);
	padding-right: var(--sea-shell-inline-padding);
}

body.ki-portal-shell-body .header-main .container-fluid,
body.ki-portal-shell-body footer .container-fluid {
	max-width: none;
	width: 100%;
	margin-left: 0;
	margin-right: 0;
	height: 100%;
	display: flex;
	align-items: center;
	padding-left: var(--sea-shell-inline-padding);
	padding-right: var(--sea-shell-inline-padding);
}

body.ki-portal-shell-body .header-main .container-fluid > .row,
body.ki-portal-shell-body footer .container-fluid > .row {
	width: 100%;
	align-items: center;
	margin-left: 0;
	margin-right: 0;
}

body.ki-portal-shell-body .ki-main-shell {
	flex: 1 0 auto;
	width: 100%;
	margin: 0;
	padding-top: 1.5rem;
	padding-bottom: 2rem;
}

body.ki-portal-shell-body .head-icon,
body.ki-portal-shell-body .head-user-link {
	color: var(--sea-secondary) !important;
}

body.ki-portal-shell-body .head-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 3rem;
	height: 3rem;
	padding: 0 !important;
}

body.ki-portal-shell-body .head-icon i,
body.ki-portal-shell-body .head-user-link i {
	font-size: 1.15rem;
	line-height: 1;
}

body.ki-portal-shell-body .header-toggle {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 3rem;
	height: 3rem;
	padding: 0;
	border: 0;
	border-radius: 999px;
	background: rgba(0, 168, 255, 0.12);
	color: var(--sea-primary-deep) !important;
	flex-shrink: 0;
	box-shadow: inset 0 0 0 1px rgba(14, 92, 181, 0.08);
}

body.ki-portal-shell-body .header-toggle i {
	font-size: 1.35rem;
	line-height: 1;
}

body.ki-portal-shell-body .header-left {
	gap: 0.85rem;
	min-width: 0;
}

body.ki-portal-shell-body .header-searchbar {
	flex: 1 1 auto;
	min-width: 0;
	max-width: 38rem;
}

body.ki-portal-shell-body .header-right {
	min-width: 0;
}

body.ki-portal-shell-body .header-right ul {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 0.85rem;
	margin: 0;
	padding: 0;
	list-style: none;
	width: 100%;
}

body.ki-portal-shell-body .header-searchbar form,
body.ki-portal-shell-body .header-search-trigger {
	margin-left: 0 !important;
	margin-right: 0 !important;
}

body.ki-portal-shell-body .header-search-trigger {
	display: block;
	width: 100%;
	padding: 0;
	border: 0;
	background: transparent;
	text-align: left;
}

body.ki-portal-shell-body .header-search-trigger-inner {
	position: relative;
}

body.ki-portal-shell-body .head-icon.bg-light-dark,
body.ki-portal-shell-body .head-user-link {
	background: #ffffff !important;
	border: 1px solid var(--sea-border);
	box-shadow: 0 12px 22px rgba(10, 37, 64, 0.05);
}

body.ki-portal-shell-body .head-user-link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 16px;
	padding: 0.35rem 0.75rem;
	text-decoration: none;
	gap: 0.45rem;
	min-width: 3rem;
}

body.ki-portal-shell-body .head-user-chevron {
	width: 1.9rem;
	height: 1.9rem;
	border-radius: 999px;
	align-items: center;
	justify-content: center;
	background: rgba(20, 32, 51, 0.06);
	color: var(--sea-secondary);
}

body.ki-portal-shell-body .head-user-avatar {
	width: 40px;
	height: 40px;
	padding: 0;
}

body.ki-portal-shell-body .head-user-avatar img,
body.ki-portal-shell-body .header-user img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: 10px;
}

body.ki-portal-shell-body .badge-notification {
	background: var(--sea-primary-deep) !important;
	color: #ffffff !important;
	border: 2px solid #ffffff;
}

body.ki-portal-shell-body .header-searchbar .form-control,
body.ki-portal-shell-body .workspace-search-modal-content .form-control {
	display: flex;
	align-items: center;
	background: rgba(255, 255, 255, 0.96);
	border-radius: 16px;
	border: 1px solid rgba(74, 74, 74, 0.14);
	min-height: 3.25rem;
	padding-left: 2.8rem;
	box-shadow: 0 12px 24px rgba(10, 37, 64, 0.04);
}

body.ki-portal-shell-body .header-search-trigger .form-control {
	color: var(--sea-muted);
	cursor: pointer;
}

body.ki-portal-shell-body .header-searchbar i,
body.ki-portal-shell-body .workspace-search-modal-content .app-icon-form i {
	position: absolute;
	left: 1rem;
	top: 50% !important;
	transform: translateY(-50%);
	z-index: 2;
	line-height: 1;
	color: var(--sea-muted) !important;
}

body.ki-portal-shell-body header.header-main .container-fluid .header-left .header-searchbar i,
body.ki-portal-shell-body .workspace-search-modal-content .header-searchbar i,
body.ki-portal-shell-body .workspace-search-modal-content .app-icon-form i {
	top: 50% !important;
	transform: translateY(-50%) !important;
}

body.ki-portal-shell-body .workspace-search-modal-content {
	border: 1px solid var(--sea-border);
	border-radius: 24px;
	overflow: hidden;
	box-shadow: var(--sea-shadow);
}

body.ki-portal-shell-body .workspace-search-results .list-group-item {
	border: 0;
	border-top: 1px solid rgba(74, 74, 74, 0.08);
	padding: 1rem 0;
}

body.ki-portal-shell-body .workspace-search-results .list-group-item:first-child {
	border-top: 0;
}

body.ki-portal-shell-body .workspace-search-results .list-group-item:hover {
	background: var(--sea-primary-soft);
}

body.ki-portal-shell-body .offcanvas {
	border-left: 1px solid var(--sea-border);
}

body.ki-portal-shell-body .offcanvas-header,
body.ki-portal-shell-body .offcanvas-body,
body.ki-portal-shell-body .head-box,
body.ki-portal-shell-body .footer-text,
body.ki-portal-shell-body .box-list a,
body.ki-portal-shell-body .app-dropdown a {
	color: var(--sea-secondary) !important;
}

body.ki-portal-shell-body .head-box {
	padding: 1rem 1.25rem;
	border-bottom: 1px solid rgba(74, 74, 74, 0.08);
}

body.ki-portal-shell-body .head-box:last-child {
	border-bottom: 0;
}

body.ki-portal-shell-body footer {
	background: transparent;
	position: static !important;
	inset: auto !important;
	width: auto !important;
	margin-top: auto;
	box-shadow: none !important;
	padding: unset !important;
}

body.ki-portal-shell-body footer .container-fluid {
	border-top: 1px solid var(--sea-border);
	margin-top: 0;
	padding-top: 1rem;
	padding-bottom: 1.2rem;
}

body.ki-portal-shell-body .customizer-btn,
body.ki-portal-shell-body .app-customizer,
body.ki-portal-shell-body #customizer {
	display: none !important;
}

body.ki-portal-shell-body.portal-nav-hidden nav {
	display: none !important;
}

body.ki-portal-shell-body.portal-nav-hidden .app-content {
	padding-left: 0 !important;
	margin-left: 0 !important;
	width: 100% !important;
}

body.ki-portal-shell-body.portal-nav-hidden .app-wrapper .semi-nav ~ .app-content,
body.ki-portal-shell-body.portal-nav-hidden .app-wrapper nav:not(.horizontal-sidebar) ~ .app-content {
	padding-left: 0 !important;
	margin-left: 0 !important;
	width: 100% !important;
}

body.ki-portal-shell-body.portal-nav-hidden .header-main,
body.ki-portal-shell-body.portal-nav-hidden footer {
	left: 0 !important;
	right: 0 !important;
	width: 100% !important;
}

body.ki-portal-shell-body.portal-nav-hidden .header-main .container-fluid,
body.ki-portal-shell-body.portal-nav-hidden footer .container-fluid,
body.ki-portal-shell-body.portal-nav-hidden .ki-main-shell,
body.ki-portal-shell-body.portal-nav-hidden .ki-main-container {
	max-width: none;
	width: 100%;
	margin-left: 0;
	margin-right: 0;
	padding-left: var(--sea-shell-inline-padding);
	padding-right: var(--sea-shell-inline-padding);
}

@media (max-width: 1199.98px) {
	body.ki-portal-shell-body .head-user-link > span:not(.head-user-avatar) {
		display: none !important;
	}
}

@media (min-width: 992px) and (max-width: 1199.98px) {
	body.ki-portal-shell-body {
		--sea-shell-inline-padding: 1rem;
	}

	body.ki-portal-shell-body .header-main .container-fluid > .row {
		gap: 0.75rem;
	}

	body.ki-portal-shell-body .header-left.col-6,
	body.ki-portal-shell-body .header-right.col-6 {
		padding-left: 0 !important;
		padding-right: 0 !important;
	}

	body.ki-portal-shell-body .header-left.col-6 {
		flex: 0 0 62%;
		max-width: 62%;
	}

	body.ki-portal-shell-body .header-right.col-6 {
		flex: 0 0 calc(38% - 0.75rem);
		max-width: calc(38% - 0.75rem);
	}

	body.ki-portal-shell-body .header-searchbar {
		max-width: none;
	}

	body.ki-portal-shell-body .header-search-trigger .form-control {
		min-height: 3rem;
		font-size: 0.95rem;
	}

	body.ki-portal-shell-body .header-right ul {
		gap: 0.65rem;
	}

	body.ki-portal-shell-body .ki-main-shell {
		padding-top: 1.25rem;
	}

	body.ki-portal-shell-body footer .container-fluid {
		padding-top: 0.85rem;
	}
}

/* ---- Side-menu polish (2026-06-10) -----------------------------------
   Tighter, more even spacing now that there are four nav sections, and we
   drop the base theme's left "accent bar" (::before) on sub-items: the active
   item is already a solid filled pill, so the extra bar only read as a
   detached, mis-aligned sliver in the gutter. */
body.ki-portal-shell-body .main-nav > li + li { margin-top: 0.45rem; }
body.ki-portal-shell-body .main-nav > li > a { min-height: 3rem; padding: 0.7rem 0.9rem; }
body.ki-portal-shell-body .main-nav > li > ul { margin-top: 0.35rem; padding-left: 0.25rem; }
body.ki-portal-shell-body .main-nav > li > ul > li + li { margin-top: 0.25rem; }
body.ki-portal-shell-body .main-nav > li > ul > li > a { min-height: 2.55rem; padding: 0.5rem 0.8rem; }
body.ki-portal-shell-body nav .app-nav .main-nav > li:not(.menu-title) ul li a::before { display: none !important; }
