@import url(//fonts.googleapis.com/css?family=Open+Sans:300italic,400italic,600italic,700italic,800italic,400,300,600,700,800&subset=latin,cyrillic-ext,greek-ext,vietnamese);
html, body {
	height: 100%;
	margin: 0;
	padding: 0;
	font-family: 'Open Sans', sans-serif;
	color: #545454;
	text-rendering: optimizeLegibility;
}
:root {
	--station-drawer-offset: 0px;
	--app-header-height: 72px;
	--sidebar-width: 235px;
}
h1, h2, h3, h4, h5, h6, p {
	margin-top: 0;
}
.page-header {
	vertical-align: middle;
	margin: 20px 0 15px 0;
	padding: 0;
	border-bottom: 1px solid #e9e9e9;
}
.page-header h1 {
	font-family: 'Open Sans', sans-serif;
	font-weight: 300;
	font-size: 30px;
	color: #4c4d5a;
	display: inline-block;
	margin-bottom: 15px;
	text-shadow: 0 1px #fff;
}
/* Breadcrumb experiment: chip style. To revert, restore the compact fallback block below. */
.breadcrumb {
	display: inline-flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 8px 0;
	max-width: 100%;
	background: transparent;
	margin: 4px 0 18px 0;
	padding: 2px 0;
	border-radius: 0;
	list-style: none;
}
.page-header h1 + .breadcrumb {
	margin-left: 14px;
}
.breadcrumb > li {
	display: inline-flex;
	align-items: center;
	min-width: 0;
	text-shadow: none;
}
.breadcrumb > li > a {
	display: inline-flex;
	align-items: center;
	min-width: 0;
	min-height: 30px;
	color: #42584a;
	font-size: 13px;
	line-height: 1.4;
	font-weight: 700;
	padding: 5px 11px;
	margin: 0;
	border: 1px solid rgba(75, 166, 75, 0.14);
	border-radius: 8px;
	background: rgba(248, 251, 246, 0.94);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.58);
	overflow-wrap: anywhere;
	transition: background-color 0.18s ease, border-color 0.18s ease, color 0.18s ease, box-shadow 0.18s ease;
}
.breadcrumb > li > a:hover,
.breadcrumb > li > a:focus {
	color: #21422d;
	background: rgba(75, 166, 75, 0.1);
	border-color: rgba(75, 166, 75, 0.28);
	box-shadow: 0 8px 18px rgba(42, 79, 53, 0.08);
	text-decoration: none;
	outline: none;
}
.breadcrumb > li:last-child > a {
	color: #ffffff;
	background: #4ba64b;
	border-color: #4ba64b;
	box-shadow: 0 10px 22px rgba(75, 166, 75, 0.18);
}
.breadcrumb > li + li:before {
	content: "\f105";
	font-family: "Font Awesome 7 Free";
	font-weight: 900;
	color: rgba(75, 166, 75, 0.62);
	padding: 0 7px;
	font-size: 11px;
	line-height: 1;
	text-shadow: none;
}
/*
Compact breadcrumb fallback:
.breadcrumb {
	display: inline-flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 6px 0;
	max-width: 100%;
	background: transparent;
	margin: 6px 0 16px 0;
	padding: 0;
	border-radius: 0;
	list-style: none;
}
.breadcrumb > li {
	display: inline-flex;
	align-items: center;
	min-width: 0;
	text-shadow: none;
}
.breadcrumb > li > a {
	display: inline-flex;
	align-items: center;
	min-width: 0;
	color: #718276;
	font-size: 13px;
	line-height: 1.4;
	font-weight: 600;
	padding: 0;
	margin: 0;
	overflow-wrap: anywhere;
	transition: color 0.18s ease;
}
.breadcrumb > li > a:hover,
.breadcrumb > li > a:focus {
	color: #4ba64b;
	text-decoration: none;
	outline: none;
}
.breadcrumb > li:last-child > a {
	color: #17372f;
	font-weight: 700;
}
.breadcrumb > li + li:before {
	content: "\f105";
	font-family: "Font Awesome 7 Free";
	font-weight: 900;
	color: rgba(75, 166, 75, 0.58);
	padding: 0 8px;
	font-size: 11px;
	line-height: 1;
	text-shadow: none;
}
*/
a:hover, a:focus {
	text-decoration: none;
}
#container {
	min-height: 100%;
	width: 100%;
	position: relative;
	background: #f6f6f6;
	overflow: hidden;
}
.container-fluid {
	padding: 0 20px;
}
#header {
	min-height: 0px;
	background: #FFFFFF;
	border-bottom: 1px solid #d8d8d8;
	margin: 0;
	padding: 0;
	box-shadow: 0px 0px 3px #ccc;
}
#header .container-fluid {
	padding: 0;
}
#header .navbar-header {
	transition: 0.3s all;
	border-right: 1px solid #eee;
	width: var(--sidebar-width);
	display: none;
}
#header .navbar-brand {
	margin-left: 8px;
}

#header .navbar-nav > li {
	display: inline-block;
}
#header .navbar-right > li {
	border-left: 1px solid #eee;
}

#header .navbar-right {
	margin-right: 0;
	margin: 0px 0px 0px 0px;
	float: right;
}
#header #user-profile {
	max-width: 30px;
	margin-right: 15px;
}

#header .nav > li > a {
	padding: 0px 21px;
	line-height: 45px;
	cursor: pointer;
	color: #6D6D6D;
	border-left: 0px solid #E1E1E1;
}

#header .nav > li.dropdown > a {
	padding-left: 10px;
	padding-right: 10px;
}
#header .nav > li.dropdown > a {
	padding-left: 10px;
	padding-right: 10px;
}

#button-menu {
	line-height: 30px;
	font-size: 24px;
	float: left;
	padding: 15px 16px;
	line-height: 25px;
	display: inline-block;
	cursor: pointer;
	color: #6D6D6D;
	border-right: 1px solid #eee;
}

@media (min-width: 768px){
	:root {
		--app-header-height: 82px;
	}
	#header .navbar-header {
		display: inline-block;
	}

	#header #user-profile {
		max-width: none;
	}

	#header .nav > li > a {
		line-height: 60px;
	}
	#header .container-fluid {
		padding: 0 24px;
	}
	#header-logo {
		min-width: 0;
	}
}

/* Desktop */
@media (min-width: 768px){
	#button-menu {
		display: none;
	}
}
#column-left {
	width: var(--sidebar-width);
	height: 100%;
	overflow-x: hidden;
	overflow-y: auto;
	scrollbar-width: none;
	-ms-overflow-style: none;
	background: #f8fbf6;
	border-right: 1px solid rgba(75, 166, 75, 0.14);
	box-shadow: 12px 0 28px rgba(42, 79, 53, 0.08);
	position: absolute;
	top: 0px;
	left: calc(-1 * var(--sidebar-width));
	padding-top: var(--app-header-height);
	z-index: 10;
}
#column-left::-webkit-scrollbar {
	display: none;
}
#content {
	padding-bottom: 40px;
}
#column-left, #content, #footer {
	transition: left 0.25s ease, margin-left 0.25s ease;
}
#column-left + #content,
#column-left ~ #footer {
	position: relative;
	left: 0px;
}
#column-left.active {
	left: 0px;
}
#column-left.active + #content,
#column-left.active ~ #footer {
	left: var(--sidebar-width);
}

/* Desktop */
@media (min-width: 768px){
	#column-left {
		left: 0px;
	}
	#column-left + #content,
	#column-left ~ #footer {
		left: 0px;
		margin-left: var(--sidebar-width);
	}
	#column-left.active + #content,
	#column-left.active ~ #footer {
		left: 0px;
		margin-left: var(--sidebar-width);
	}
}

#button-station {
	min-height: 60px;
	padding: 10px 16px;
	display: inline-flex;
	align-items: center;
	gap: 12px;
	cursor: pointer;
	color: #56705d;
	text-decoration: none;
	transition: background-color 0.2s ease, color 0.2s ease, box-shadow 0.2s ease;
}

#button-station:hover,
#button-station:focus,
#button-station[aria-expanded="true"] {
	color: #2f4f38;
	background: rgba(75, 166, 75, 0.08);
	box-shadow: inset 0 0 0 1px rgba(75, 166, 75, 0.14);
}

#button-station:focus,
#button-station:focus-visible {
	outline: none;
}

.station-trigger-icon,
.station-trigger-chevron {
	width: 34px;
	height: 34px;
	border-radius: 12px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: rgba(75, 166, 75, 0.1);
	color: #4ba64b;
	flex: 0 0 auto;
}

.station-trigger-copy {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	line-height: 1.1;
}

.station-trigger-label {
	font-size: 10px;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	font-weight: 700;
	color: #93a294;
}

.station-trigger-name {
	margin-top: 3px;
	font-size: 13px;
	font-weight: 700;
	color: inherit;
}

.station-trigger-chevron {
	width: 28px;
	height: 28px;
	margin-left: 2px;
	background: transparent;
	color: #7f8f80;
}

#button-station .station-trigger-chevron i {
	transition: transform 0.2s ease;
}

#button-station[aria-expanded="true"] .station-trigger-chevron i {
	transform: rotate(180deg);
}

#header {
	min-height: var(--app-header-height);
	background: linear-gradient(180deg, #f8fbf6 0%, #eef5eb 100%);
	border-bottom: 1px solid #dbe7d8;
	box-shadow: 0 14px 30px rgba(42, 79, 53, 0.08);
}

#header .container-fluid {
	padding: 0 18px;
}

.header-shell {
	min-height: var(--app-header-height);
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 18px;
}

.header-shell__left {
	flex: 1 1 auto;
	min-width: 0;
	display: flex;
	align-items: center;
	gap: 14px;
}

#button-menu.header-shell__menu {
	width: 46px;
	height: 46px;
	float: none;
	padding: 0;
	line-height: 1;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-right: 0;
	border-radius: 16px;
	background: rgba(255, 255, 255, 0.92);
	border: 1px solid rgba(75, 166, 75, 0.14);
	box-shadow: 0 12px 24px rgba(42, 79, 53, 0.06);
	color: #31523a;
}

#button-menu.header-shell__menu:hover,
#button-menu.header-shell__menu:focus {
	background: #ffffff;
	color: #21422d;
	border-color: rgba(75, 166, 75, 0.24);
}

#header-logo {
	display: block;
	min-width: 0;
}

.header-brand .navbar-brand {
	margin-left: 0;
	padding: 0;
	height: var(--app-header-height);
	display: inline-flex;
	align-items: center;
	gap: 0;
	float: none;
}

.header-brand__mark {
	width: auto;
	height: calc(var(--app-header-height) - 6px);
	border-radius: 0;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: transparent;
	border: 0;
	box-shadow: none;
	flex: 0 0 auto;
}

.header-brand__mark img {
	width: auto;
	height: auto;
	max-width: 340px;
	max-height: calc(var(--app-header-height) - 6px);
	display: block;
}

.header-actions {
	margin: 0 !important;
	padding: 0;
	list-style: none;
	float: none !important;
	display: flex !important;
	align-items: stretch;
	gap: 8px;
	flex: 0 0 auto;
	border-radius: 0;
	background: transparent;
	border: 0;
	box-shadow: none;
}

.header-actions__item {
	display: flex;
	align-items: stretch;
	border-left: 0 !important;
	min-width: 0;
}

.header-actions > li > a.header-action,
#button-station.header-action {
	height: 56px;
	min-height: 56px;
	min-width: 0;
	padding: 8px 14px;
	display: inline-flex;
	align-items: center;
	gap: 12px;
	border-radius: 18px;
	background: rgba(244, 249, 241, 0.78);
	border: 1px solid rgba(75, 166, 75, 0.08);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.28);
	color: #31523a;
	line-height: normal;
	transition: background-color 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease, transform 0.18s ease;
}

.header-actions > li > a.header-action:hover,
.header-actions > li > a.header-action:focus,
.header-actions > li > a.header-action:focus-visible,
#button-station.header-action:hover,
#button-station.header-action:focus,
#button-station.header-action:focus-visible,
#button-station[aria-expanded="true"] {
	background: rgba(248, 251, 246, 0.96);
	color: #21422d;
	border-color: rgba(75, 166, 75, 0.14);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.4);
	transform: translateY(-1px);
	outline: none;
}

.header-actions > .open > a.header-action,
.header-actions > .open > a.header-action:hover,
.header-actions > .open > a.header-action:focus {
	background: rgba(248, 251, 246, 0.96);
	border-color: rgba(75, 166, 75, 0.14);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.4);
}

.header-action__icon,
.header-action__flag,
.header-action__chevron,
.station-trigger-icon,
.station-trigger-chevron {
	width: 36px;
	height: 36px;
	border-radius: 14px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: rgba(75, 166, 75, 0.11);
	color: #4ba64b;
	flex: 0 0 auto;
}

.header-action__flag img {
	width: 18px;
	height: 18px;
	border-radius: 999px;
	object-fit: cover;
	display: block;
	margin: 0 auto;
}

#header .header-action__flag #user-profile {
	margin: 0 auto;
	max-width: 18px;
}

.header-action__copy,
.station-trigger-copy {
	min-width: 0;
	display: flex;
	flex-direction: column;
	justify-content: center;
	overflow: hidden;
}

.header-action__eyebrow,
.station-trigger-label {
	font-size: 10px;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: #7a8e80;
}

.header-action__label,
.station-trigger-name {
	display: block;
	font-size: 14px;
	line-height: 1.2;
	font-weight: 700;
	color: #1d3b2d;
	max-width: 100%;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.station-trigger-name {
	margin-top: 0;
	font-size: 15px;
	max-width: 208px;
}

.header-action--language {
	min-width: 132px;
	justify-content: flex-start;
	padding-left: 10px !important;
	padding-right: 10px !important;
}

.header-action--language .header-action__label--language {
	margin-top: 0;
	max-width: 96px;
	font-weight: 700;
}

.header-action--language .header-action__chevron {
	background: transparent;
	color: #66816d;
	width: 18px;
	height: 18px;
	border-radius: 0;
}

.header-action--logout {
	padding-left: 12px !important;
	padding-right: 14px !important;
}

.header-action--logout .header-action__label {
	margin-top: 0;
	white-space: nowrap;
	font-weight: 600;
}

.header-action--logout .header-action__icon {
	background: rgba(22, 40, 27, 0.06);
	color: #2c5136;
}

.header-language__menu.dropdown-menu {
	margin-top: 12px;
	padding: 8px;
	min-width: 210px;
	border: 1px solid #dce8d8;
	border-radius: 20px;
	background: rgba(255, 255, 255, 0.98);
	box-shadow: 0 24px 44px rgba(29, 50, 35, 0.12);
}

.header-language__menu > li {
	overflow: hidden;
	border-radius: 14px;
}

.header-language__menu > .divider {
	margin: 6px 0;
	background-color: #edf3eb;
}

.header-language__option {
	display: flex !important;
	align-items: center;
	gap: 10px;
	padding: 10px 12px !important;
	color: #31523a !important;
	font-weight: 600;
}

.header-language__option:hover,
.header-language__option:focus,
.header-language__option.is-active {
	background: rgba(75, 166, 75, 0.08) !important;
	color: #21422d !important;
}

.header-language__option img {
	width: 18px;
	height: 18px;
	border-radius: 999px;
	object-fit: cover;
	flex: 0 0 auto;
}

.header-language__option i {
	margin-left: auto;
	color: #4ba64b;
}

#station-drawer-backdrop {
	position: fixed;
	top: var(--station-drawer-offset);
	right: 0;
	bottom: 0;
	left: 0;
	background: rgba(19, 33, 23, 0.28);
	backdrop-filter: blur(2px);
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transition: opacity 0.24s ease, visibility 0.24s ease;
	z-index: 1038;
}

#station-drawer-backdrop.active {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
}

#station-list {
	width: 360px;
	max-width: calc(100vw - 18px);
	height: calc(100vh - var(--station-drawer-offset));
	height: calc(100dvh - var(--station-drawer-offset));
	display: flex;
	flex-direction: column;
	overflow: hidden;
	background: linear-gradient(180deg, #f6faf4 0%, #ffffff 100%);
	position: fixed;
	top: var(--station-drawer-offset);
	bottom: 0;
	right: -360px;
	z-index: 1039;
	box-shadow: 0 26px 70px rgba(14, 18, 21, 0.26);
	border-left: 1px solid rgba(75, 166, 75, 0.1);
	transition: right 0.28s ease;
}

#station-list::-webkit-scrollbar {
	width: 10px;
	background-color: rgba(200,200,200,0);
}

#station-list::-webkit-scrollbar-thumb {
	border-radius: 4px;
	background-color: rgba(128,139,156,0.2);
}

#station-list.active {
	right: 0;
}

.station-drawer__search,
.station-drawer__actions {
	flex: 0 0 auto;
	padding: 16px 20px 0;
	background: rgba(246, 250, 244, 0.96);
}

.station-search {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 0 14px;
	min-height: 52px;
	border-radius: 18px;
	background: #fff;
	border: 1px solid rgba(75, 166, 75, 0.14);
	box-shadow: 0 12px 28px rgba(48, 75, 50, 0.08);
	transition: border-color 0.18s ease, box-shadow 0.18s ease, transform 0.18s ease;
}

.station-search:focus-within {
	border-color: rgba(75, 166, 75, 0.45);
	box-shadow: 0 0 0 3px rgba(75, 166, 75, 0.12), 0 14px 30px rgba(48, 75, 50, 0.1);
	transform: translateY(-1px);
}

.station-search__icon {
	color: #7b927d;
	font-size: 15px;
}

.station-search .form-control {
	padding: 0;
	height: 50px;
	border: 0;
	box-shadow: none;
	background: transparent;
	font-size: 14px;
	color: #2f4333;
}

.station-search .form-control:focus {
	box-shadow: none;
}

.station-search .form-control:hover,
.station-search .form-control:active {
	border: 0;
	box-shadow: none;
}

.station-drawer__actions {
	padding-bottom: 16px;
}

.station-drawer__add {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	width: 100%;
	min-height: 46px;
	padding: 0 16px;
	border-radius: 16px;
	background: rgba(75, 166, 75, 0.08);
	border: 1px solid rgba(75, 166, 75, 0.14);
	color: #376639;
	font-size: 13px;
	font-weight: 700;
	text-decoration: none;
	transition: background-color 0.18s ease, border-color 0.18s ease, transform 0.18s ease;
}

.station-drawer__add:hover,
.station-drawer__add:focus {
	color: #2c5630;
	background: rgba(75, 166, 75, 0.14);
	border-color: rgba(75, 166, 75, 0.22);
	text-decoration: none;
	transform: translateY(-1px);
}

.station-drawer__body {
	flex: 1 1 auto;
	min-height: 0;
	padding: 0 14px 14px;
	overflow: hidden;
}

.station-drawer__list {
	height: 100%;
	overflow-y: auto;
	min-height: 0;
	padding: 2px 6px 8px;
}

.station-card {
	position: relative;
	display: block;
	margin-bottom: 12px;
	padding: 16px 16px 16px 18px;
	border-radius: 22px;
	background: #fff;
	border: 1px solid rgba(75, 166, 75, 0.1);
	box-shadow: 0 16px 30px rgba(22, 40, 27, 0.08);
	color: #365039;
	text-decoration: none;
	overflow: hidden;
	transition: transform 0.18s ease, box-shadow 0.18s ease, border-color 0.18s ease;
}

.station-card:hover,
.station-card:focus,
.station-card:focus-visible {
	color: #28452f;
	text-decoration: none;
	transform: translateY(-2px);
	box-shadow: 0 22px 38px rgba(22, 40, 27, 0.12);
	border-color: rgba(75, 166, 75, 0.22);
	outline: none;
}

.station-card.is-active {
	background: linear-gradient(135deg, rgba(75, 166, 75, 0.15) 0%, rgba(255, 255, 255, 0.98) 100%);
	border-color: rgba(75, 166, 75, 0.3);
	box-shadow: 0 22px 42px rgba(75, 166, 75, 0.16);
}

.station-card__accent {
	position: absolute;
	top: 16px;
	left: 0;
	bottom: 16px;
	width: 4px;
	border-radius: 0 999px 999px 0;
	background: linear-gradient(180deg, #9dd89d 0%, #4ba64b 100%);
	opacity: 0;
	transition: opacity 0.18s ease;
}

.station-card.is-active .station-card__accent {
	opacity: 1;
}

.station-card__head,
.station-card__foot,
.station-card__identity,
.station-card__status,
.station-card__updated,
.station-card__battery,
.station-card__markers {
	display: flex;
	align-items: center;
}

.station-card__head,
.station-card__foot {
	justify-content: space-between;
	gap: 12px;
}

.station-card__foot {
	margin-top: 14px;
	align-items: flex-end;
}

.station-card__identity {
	gap: 12px;
	flex: 1 1 auto;
	min-width: 0;
	max-width: 100%;
}

.station-card__logo {
	width: 42px;
	height: 42px;
	border-radius: 14px;
	background: rgba(75, 166, 75, 0.08);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 auto;
}

.station-card__logo img {
	max-width: 24px;
	max-height: 24px;
}

.station-card__meta {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	flex: 1 1 auto;
	min-width: 0;
	max-width: 100%;
	overflow: hidden;
}

.station-card__name {
	display: block;
	max-width: 100%;
	font-size: 15px;
	font-weight: 700;
	line-height: 1.2;
	color: #26432d;
	white-space: normal;
	overflow: hidden;
	text-overflow: initial;
	overflow-wrap: anywhere;
	word-break: break-word;
}

.station-card__id {
	margin-top: 4px;
	font-size: 11px;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: #7c8f80;
}

.station-card__updated {
	gap: 8px;
	font-size: 12px;
	color: #708472;
}

.station-card__updated i {
	color: #4ba64b;
}

.station-card__status {
	gap: 10px;
	flex-wrap: wrap;
	justify-content: flex-end;
}

.station-card__battery {
	gap: 6px;
	padding: 7px 10px;
	border-radius: 999px;
	background: rgba(75, 166, 75, 0.08);
	font-size: 12px;
	font-weight: 700;
	color: #436246;
}

.station-card__markers {
	gap: 6px;
	flex-wrap: wrap;
	justify-content: flex-end;
}

.station-card__marker {
	width: 28px;
	height: 28px;
	border-radius: 10px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: #f2f6f1;
	border: 1px solid rgba(75, 166, 75, 0.08);
}

.station-card__marker img {
	max-width: 16px;
	max-height: 16px;
}

.station-drawer__empty {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 180px;
	padding: 24px;
	border-radius: 22px;
	background: rgba(255, 255, 255, 0.92);
	border: 1px dashed rgba(75, 166, 75, 0.2);
	color: #7d8c7d;
	font-size: 14px;
	text-align: center;
}

/* Clear floats after the columns */
.row:after {
  content: "";
  display: table;
  clear: both;
}

@media (max-width: 991px) {
	.header-shell {
		gap: 12px;
	}
	.header-actions {
		gap: 8px;
	}
	.station-trigger-name {
		max-width: 164px;
	}
}

@media (max-width: 767px) {
	#station-list {
		width: calc(100vw - 6px);
		right: calc(-1 * (100vw - 6px));
	}
	#header .container-fluid {
		padding: 0 6px;
	}
	.header-shell {
		gap: 3px;
	}
	.header-shell__left {
		flex: 0 1 auto;
		gap: 4px;
	}
	#button-menu.header-shell__menu {
		width: 40px;
		height: 40px;
		border-radius: 14px;
	}
	#header-logo {
		display: block;
		flex: 0 1 clamp(118px, 30vw, 184px);
	}
	.header-brand .navbar-brand {
		height: 52px;
		max-width: 100%;
	}
	.header-brand__mark {
		width: 100%;
		max-width: 100%;
		height: 52px;
		border-radius: 0;
		overflow: hidden;
	}
	.header-brand__mark img {
		max-width: 100%;
		max-height: 52px;
	}
	.header-actions {
		gap: 1px;
		margin-left: auto !important;
	}
	.header-actions > li > a.header-action,
	#button-station.header-action {
		height: 40px;
		min-height: 40px;
		padding: 5px 5px;
		gap: 4px;
		border-radius: 13px;
	}
	.header-action__icon,
	.header-action__flag,
	.header-action__chevron,
	.station-trigger-icon,
	.station-trigger-chevron {
		width: 30px;
		height: 30px;
		border-radius: 11px;
	}
	.header-action--language {
		min-width: 84px;
	}
	.header-action--language .header-action__label--language {
		max-width: 44px;
		font-size: 12px;
	}
	.header-action__copy {
		display: none;
	}
	.header-action__chevron {
		display: none;
	}
	.station-trigger-chevron {
		display: none;
	}
	.station-trigger-name {
		margin-top: 0;
		max-width: 108px;
		font-size: 12px;
	}
	.header-actions__item--station {
		min-width: 0;
	}
	.header-actions__item--station #button-station {
		max-width: 148px;
	}
	.header-actions__item--language .header-action,
	.header-actions__item--logout .header-action {
		padding-left: 4px !important;
		padding-right: 4px !important;
	}
	.header-actions__item--logout .header-action__label {
		display: none;
	}
	.header-language__menu.dropdown-menu {
		right: 0;
		left: auto;
	}
	.station-drawer__search,
	.station-drawer__actions {
		padding-left: 16px;
		padding-right: 16px;
	}
	.station-drawer__body {
		padding-left: 10px;
		padding-right: 10px;
	}
	.station-card {
		padding: 14px 14px 14px 16px;
		border-radius: 20px;
	}
	.station-card__head,
	.station-card__foot {
		flex-direction: column;
		align-items: flex-start;
	}
	.station-card__status {
		width: 100%;
		justify-content: flex-start;
	}
}

@media (max-width: 480px) {
	#header .container-fluid {
		padding: 0 4px;
	}
	.header-shell,
	.header-shell__left {
		gap: 2px;
	}
	#button-menu.header-shell__menu {
		width: 36px;
		height: 36px;
	}
	#header-logo {
		flex-basis: clamp(96px, 32vw, 136px);
	}
	.header-brand .navbar-brand,
	.header-brand__mark {
		height: 44px;
	}
	.header-brand__mark img {
		max-height: 44px;
	}
	.header-actions {
		gap: 0;
	}
	.header-actions > li > a.header-action,
	#button-station.header-action {
		height: 38px;
		min-height: 38px;
		padding-left: 4px !important;
		padding-right: 4px !important;
	}
	.header-action__icon,
	.header-action__flag,
	.station-trigger-icon {
		width: 26px;
		height: 26px;
		border-radius: 10px;
	}
	.header-action--language {
		min-width: 72px;
	}
	.header-action--language .header-action__label--language {
		max-width: 36px;
		font-size: 11px;
	}
	.header-actions__item--station #button-station {
		max-width: 118px;
		padding-left: 4px;
		padding-right: 4px;
	}
	.station-trigger-name {
		max-width: 78px;
		font-size: 12px;
	}
}

/* Navigation */
#navigation {
	min-height: 56px;
	display: flex;
	align-items: center;
	gap: 10px;
	text-transform: uppercase;
	letter-spacing: 0;
	padding: 14px 16px 10px 16px;
	color: #31523a;
	background: #f8fbf6;
	font-size: 11px;
	font-weight: 700;
	line-height: 1.4;
}

.navigation__icon {
	width: 28px;
	height: 28px;
	border-radius: 8px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 28px;
	color: #ffffff;
	background: var(--primary);
	box-shadow: 0 8px 16px rgba(75, 166, 75, 0.18);
}

.navigation__label {
	min-width: 0;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

/* Menu */
#menu, #menu ul, #menu li {
	padding: 0;
	margin: 0;
	list-style: none;
}
#menu {
	margin-bottom: 0;
	padding: 6px 10px 22px 10px;
}
#menu li a {
	text-decoration: none;
	position: relative;
	min-height: 40px;
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 9px 12px;
	cursor: pointer;
	border-radius: 8px;
	color: #42584a;
	font-size: 13px;
	font-weight: 600;
	line-height: 1.35;
	overflow: hidden;
	transition: background-color 0.18s ease, color 0.18s ease, box-shadow 0.18s ease;
}
#menu li a:hover,
#menu li a:focus {
	color: #21422d;
	background: rgba(75, 166, 75, 0.1);
	box-shadow: inset 0 0 0 1px rgba(75, 166, 75, 0.16);
}
#menu li a:focus {
	outline: 2px solid rgba(75, 166, 75, 0.35);
	outline-offset: 2px;
}
#menu li a:focus:not(:focus-visible) {
	outline: none;
}
#menu li a:focus-visible {
	outline: 2px solid rgba(75, 166, 75, 0.35);
	outline-offset: 2px;
}
#menu li a.parent {
	padding-right: 36px;
}
#menu li a.parent:after {
	font-family: "Font Awesome 7 Free";
	font-weight: 900;
	content: "\f107";
	position: absolute;
	top: 50%;
	right: 14px;
	width: 14px;
	color: rgba(49, 82, 58, 0.58);
	font-size: 12px;
	line-height: 1;
	text-align: center;
	transform: translateY(-50%);
	transition: color 0.18s ease;
}
#menu li a.collapsed:after {
	content: "\f105";
}
.menu-link__icon {
	width: 30px;
	height: 30px;
	border-radius: 8px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 30px;
	color: var(--primary);
	background: rgba(75, 166, 75, 0.1);
	font-size: 15px;
}
.menu-link__icon .fa {
	width: auto;
	margin: 0;
	text-align: center;
}
.menu-link__label {
	min-width: 0;
	flex: 1 1 auto;
	line-height: 1.35;
	overflow-wrap: anywhere;
}
#menu .menu-link__label .label {
	float: none !important;
	display: inline-flex;
	align-items: center;
	margin-left: 8px;
	padding: 3px 6px;
	border-radius: 8px;
	font-size: 11px;
	line-height: 1;
	vertical-align: middle;
}
/* 1st lvl */
#menu > li {
	position: relative;
	margin: 3px 0;
}
#menu > li > a {
	font-size: 14px;
	color: #31523a;
}
#menu > li.active > a {
	color: #ffffff;
	background: var(--primary);
	box-shadow: 0 8px 18px rgba(75, 166, 75, 0.2);
}
#menu > li.active > a:hover,
#menu > li.active > a:focus {
	color: #ffffff;
	background: var(--primary);
	box-shadow: 0 8px 18px rgba(75, 166, 75, 0.24);
}
#menu > li.active > a:after {
	color: rgba(255, 255, 255, 0.84);
}
#menu > li.active > a .menu-link__icon {
	color: #ffffff;
	background: rgba(255, 255, 255, 0.18);
}
#menu > li > ul {
	background: rgba(255, 255, 255, 0.7);
}
/* 2nd lvl */
#menu li ul {
	margin: 2px 0 4px 18px;
	padding: 3px 0 5px 0;
	border-left: 1px solid rgba(75, 166, 75, 0.14);
}
#menu li li ul {
	margin-left: 12px;
}
#menu li li a {
	min-height: 36px;
	padding-left: 12px;
	color: #4f6256;
	font-size: 13px;
	font-weight: 600;
}
#menu li li a:before {
	content: "";
	width: 6px;
	height: 6px;
	border-radius: 6px;
	background: rgba(75, 166, 75, 0.28);
	flex: 0 0 6px;
	transition: background-color 0.18s ease, transform 0.18s ease;
}
#menu li li a:hover:before,
#menu li li a:focus:before,
#menu li li.active > a:before {
	background: currentColor;
	transform: scale(1.12);
}
#menu li li a:hover {
	color: #21422d;
	background: rgba(75, 166, 75, 0.1);
}
#menu li li.active > a {
	color: #ffffff;
	background: var(--secondary);
	box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.22);
}
#menu li li.active > a:after {
	color: rgba(255, 255, 255, 0.82);
}
#menu li ul a {
	padding-left: 12px;
}
#menu li li ul a {
	padding-left: 14px;
	font-size: 12px;
}
#menu li li li ul a {
	padding-left: 16px;
}
#menu li li li li ul a {
	padding-left: 18px;
}

/* footer */
#footer {
	min-height: 92px;
	height: auto;
	padding: 18px 22px 22px;
	background: linear-gradient(180deg, #eef4ec 0%, #e4eee0 100%);
	border-top: 1px solid rgba(75, 166, 75, 0.14);
	color: #5f7568;
	text-align: left;
}
.app-footer__inner {
	width: 100%;
	min-height: 52px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 14px;
	padding: 12px 16px;
	border: 1px solid #d8ead8;
	border-radius: 8px;
	background: rgba(255, 255, 255, 0.78);
	box-shadow: 0 12px 28px rgba(49, 88, 49, 0.06);
}
.app-footer__brand {
	min-width: 0;
	color: #31523a;
	font-size: 13px;
	font-weight: 700;
	line-height: 1.45;
	overflow-wrap: anywhere;
}
.app-footer__version {
	min-height: 30px;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	flex: 0 0 auto;
	padding: 5px 10px;
	border: 1px solid rgba(75, 166, 75, 0.14);
	border-radius: 8px;
	background: rgba(75, 166, 75, 0.09);
	color: #376639;
	font-size: 12px;
	font-weight: 800;
	line-height: 1.2;
}
.app-footer__version-icon {
	width: 20px;
	height: 20px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 8px;
	background: rgba(75, 166, 75, 0.12);
	color: var(--primary);
	font-size: 10px;
}
@media (max-width: 480px) {
	#footer {
		padding: 14px 14px 18px;
	}
	.app-footer__inner {
		align-items: flex-start;
		flex-direction: column;
	}
}
/* Navs
/* Tabs */
#content .nav-tabs > li > a {
	color: #4f6857;
	border: 1px solid transparent;
	border-radius: 8px 8px 0 0;
	font-weight: 700;
	transition: background-color 0.18s ease, border-color 0.18s ease, color 0.18s ease;
}
#content .nav-tabs > li > a:hover,
#content .nav-tabs > li > a:focus {
	color: #21422d;
	border-color: #d8ead8;
	background: #f8fbf7;
}
#content .nav-tabs {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-bottom: 22px;
	border-bottom: 1px solid #d8ead8;
}
#content .nav-tabs > li.active > a,
#content .nav-tabs > li.active > a:hover,
#content .nav-tabs > li.active > a:focus {
	font-weight: 800;
	color: #17372f;
	border-color: #d8ead8 #d8ead8 #ffffff;
	background: #ffffff;
}
#content .form-control:hover,
body.auth-layout .form-control:hover {
	border-color: rgba(75, 166, 75, 0.34);
	box-shadow: 0 0 0 3px rgba(75, 166, 75, 0.08);
}
div.required .control-label:not(span):before, td.required:before {
	content: '* ';
	color: #d76a5d;
	font-weight: bold;
}
.btn-group {
	white-space: nowrap;
}

#content .table thead td span[data-toggle="tooltip"]:after,
#content label.control-label span:after,
body.auth-layout label.control-label span:after {
	font-family: "Font Awesome 7 Free";
	font-weight: 900;
	color: var(--primary);
	content: "\f059";
	margin-left: 4px;
}
#content fieldset legend {
	padding-bottom: 5px;
}
#content input[type="radio"],
#content input[type="checkbox"],
body.auth-layout input[type="radio"],
body.auth-layout input[type="checkbox"] {
	margin: 2px 0 0;
}
#content .radio,
#content .checkbox,
body.auth-layout .radio,
body.auth-layout .checkbox {
	min-height: 18px;
}
#content input[type="radio"],
#content .radio input[type="radio"],
#content .radio-inline input[type="radio"],
#content input[type="checkbox"],
#content .checkbox input[type="checkbox"],
#content .checkbox-inline input[type="checkbox"],
body.auth-layout input[type="radio"],
body.auth-layout .radio input[type="radio"],
body.auth-layout .radio-inline input[type="radio"],
body.auth-layout input[type="checkbox"],
body.auth-layout .checkbox input[type="checkbox"],
body.auth-layout .checkbox-inline input[type="checkbox"] {
	position: relative;
	width: 16px;
	height: 16px;
	-webkit-appearance: none;
	background: #ffffff;
	border: 1px solid #d8ead8;
	border-radius: 4px;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.55);
}
#content input[type="radio"]:focus,
#content .radio input[type="radio"]:focus,
#content .radio-inline input[type="radio"]:focus,
#content input[type="checkbox"]:focus,
#content .checkbox input[type="checkbox"]:focus,
#content .checkbox-inline input[type="checkbox"]:focus,
body.auth-layout input[type="radio"]:focus,
body.auth-layout .radio input[type="radio"]:focus,
body.auth-layout .radio-inline input[type="radio"]:focus,
body.auth-layout input[type="checkbox"]:focus,
body.auth-layout .checkbox input[type="checkbox"]:focus,
body.auth-layout .checkbox-inline input[type="checkbox"]:focus {
	border-color: var(--primary);
	box-shadow: 0 0 0 3px rgba(75, 166, 75, 0.12);
	outline: 0;
}
#content input[type="radio"]:active,
#content .radio input[type="radio"]:active,
#content .radio-inline input[type="radio"]:active,
#content input[type="checkbox"]:active,
#content .checkbox input[type="checkbox"]:active,
#content .checkbox-inline input[type="checkbox"]:active,
body.auth-layout input[type="radio"]:active,
body.auth-layout .radio input[type="radio"]:active,
body.auth-layout .radio-inline input[type="radio"]:active,
body.auth-layout input[type="checkbox"]:active,
body.auth-layout .checkbox input[type="checkbox"]:active,
body.auth-layout .checkbox-inline input[type="checkbox"]:active {
	background-color: #f5faf3;
	border-color: rgba(75, 166, 75, 0.42);
}
#content input[type="radio"]:checked,
#content .radio input[type="radio"]:checked,
#content .radio-inline input[type="radio"]:checked,
#content input[type="checkbox"]:checked,
#content .checkbox input[type="checkbox"]:checked,
#content .checkbox-inline input[type="checkbox"]:checked,
body.auth-layout input[type="radio"]:checked,
body.auth-layout .radio input[type="radio"]:checked,
body.auth-layout .radio-inline input[type="radio"]:checked,
body.auth-layout input[type="checkbox"]:checked,
body.auth-layout .checkbox input[type="checkbox"]:checked,
body.auth-layout .checkbox-inline input[type="checkbox"]:checked {
	background: #ffffff;
	border-color: var(--primary);
}
#content input[type="radio"],
#content .radio input[type="radio"],
#content .radio-inline input[type="radio"],
body.auth-layout input[type="radio"],
body.auth-layout .radio input[type="radio"],
body.auth-layout .radio-inline input[type="radio"] {
	width: 18px;
	height: 18px;
	border-radius: 1em;
}
#content input[type="radio"]:checked::after,
#content .radio input[type="radio"]:checked::after,
#content .radio-inline input[type="radio"]:checked::after,
body.auth-layout input[type="radio"]:checked::after,
body.auth-layout .radio input[type="radio"]:checked::after,
body.auth-layout .radio-inline input[type="radio"]:checked::after {
	position: relative;
	top: 4px;
	left: 4px;
	display: block;
	width: 8px;
	height: 8px;
	content: '';
	background: var(--primary);
	border-radius: 1em;
}
#content input[type="checkbox"]:hover,
#content .checkbox input[type="checkbox"]:hover,
#content .checkbox-inline input[type="checkbox"]:hover,
body.auth-layout input[type="checkbox"]:hover,
body.auth-layout .checkbox input[type="checkbox"]:hover,
body.auth-layout .checkbox-inline input[type="checkbox"]:hover {
	border-color: rgba(75, 166, 75, 0.42);
}
#content input[type="checkbox"]:checked::after,
#content .checkbox input[type="checkbox"]:checked::after,
#content .checkbox-inline input[type="checkbox"]:checked::after,
body.auth-layout input[type="checkbox"]:checked::after,
body.auth-layout .checkbox input[type="checkbox"]:checked::after,
body.auth-layout .checkbox-inline input[type="checkbox"]:checked::after {
	position: absolute;
	top: 0;
	left: 3px;
	display: block;
	content: "\f00c";
	font-family: "Font Awesome 7 Free";
	font-size: 11px;
	font-weight: 900;
	line-height: 16px;
	color: var(--primary);
}
#content .table thead td {
	font-weight: bold;
}
#content .table thead > tr > td,
#content .table tbody > tr > td {
	vertical-align: middle;
}
#content .table a.asc:after {
	content: " \f106";
	font-family: "Font Awesome 7 Free";
	font-weight: 900;
}
#content .table a.desc:after {
	content: " \f107";
	font-family: "Font Awesome 7 Free";
	font-weight: 900;
}
#content .pagination {
	margin: 0;
}
#content .form-group {
	padding-top: 15px;
	padding-bottom: 15px;
	margin-bottom: 0;
}
#content .form-group + .form-group {
	border-top: 1px solid #edf3eb;
}
/* Panels */
#content .panel {
	border-radius: 8px;
}
#content .panel .panel-heading {
	position: relative;
}
#content .panel-heading h3 i {
	margin-right: 5px;
	-webkit-tap-highlight-color: rgba(0,0,0,0);
}
#content .panel-heading h3 {
	font-weight: 800;
	display: inline-block;
}
/* Primary Panel */
#content .panel-primary {
	border: 1px solid #d8ead8;
	border-top: 2px solid var(--primary);
}
#content .panel-primary .panel-heading {
	color: #31523a;
	border-color: #d8ead8;
	background: #ffffff;
}
/* Default Panel */
#content .panel-default {
	border: 1px solid #d8ead8;
	border-top: 1px solid #d8ead8;
}
#content .panel-default .panel-heading {
	color: #17372f;
	border-color: #edf3eb;
	background: linear-gradient(180deg, #ffffff 0%, #f8fbf8 100%);
	text-shadow: none;
}
#content .img-thumbnail i {
	color: #ffffff;
	background-color: #d8ead8;
	text-align: center;
	vertical-align: middle;
	width: 100px;
	height: 100px;
	padding-top: 20px;
	vertical-align: middle;
	display: inline-block;
}
#content .img-thumbnail.list i {
	width: 40px;
	height: 40px;
	padding-top: 10px;
}
/* Tiles */
#content .tile {
	margin-bottom: 15px;
	border-radius: 8px;
	color: #17372f;
	transition: opacity 0.18s ease, transform 0.18s ease;
}
#content .tile-primary {
	background-color: #f5faf3;
}
#content .tile-success {
	background-color: #f5faf3;
}
#content .tile-warning {
	background-color: #fff8eb;
}
#content .tile-danger {
	background-color: #fff2ef;
}
#content .tile:hover {
	opacity: 0.95;
}
#content .tile a {
	color: #31523a;
}
#content .tile-heading {
	padding: 5px 8px;
	text-transform: uppercase;
	color: #17372f;
	text-shadow: none;
	background-color: rgba(75, 166, 75, 0.08);
}
#content .tile .tile-heading .pull-right {
	transition: opacity 0.18s ease;
	opacity: 0.78;
}
#content .tile:hover .tile-heading .pull-right {
	opacity: 1;
}
#content .tile-body {
	padding: 15px;
	color: #17372f;
	line-height: 48px;
	text-shadow: none;
}
#content .tile-default .tile-body {
	color: #17372f;
}
#content .tile .tile-body i {
	font-size: 50px;
	opacity: 1;
	transition: opacity 0.18s ease;
}
#content .tile:hover .tile-body i {
	color: var(--primary);
	opacity: 1;
}
#content .tile .tile-body h2 {
	font-size: 42px;
}
#content .tile-footer {
	padding: 5px 8px;
	background-color: #f8fbf7;
}
#stats {
	border-radius: 2px;
	color: #808b9c;
	background: #2e3a47;
	margin: 15px 20px;
	padding: 5px 0;
}
#stats ul, #stats li {
	padding: 0;
	margin: 0;
	list-style: none;
}
#stats li {
	font-size: 11px;
	color: #9d9d9d;
	padding: 5px 10px;
	border-bottom: 1px dotted #373737;
}
#stats div:first-child {
	margin-bottom: 4px;
}
#stats .progress {
	height: 3px;
	margin-bottom: 0;
}
.jqvmap-label {
	z-index: 999;
}
.alert {
	overflow: auto;
}

/* Shared modal skin */
.modal-backdrop {
	background: #132117;
}

.modal-backdrop.in {
	opacity: 0.38;
}

.modal .modal-dialog {
	margin-top: 34px;
	margin-bottom: 34px;
}

.modal .modal-content {
	overflow: visible;
	border: 1px solid #d8ead8;
	border-radius: 8px;
	background: #ffffff;
	box-shadow: 0 24px 64px rgba(14, 18, 21, 0.24);
	color: #42584a;
}

.modal .modal-header {
	display: flex;
	align-items: center;
	gap: 14px;
	min-height: 62px;
	padding: 16px 18px;
	border-bottom: 1px solid #e5efe2;
	background: linear-gradient(180deg, #ffffff 0%, #f8fbf7 100%);
}

.modal .modal-title {
	order: 1;
	min-width: 0;
	margin: 0;
	color: #17372f;
	font-size: 19px;
	line-height: 1.3;
	font-weight: 800;
	letter-spacing: 0;
	overflow-wrap: anywhere;
}

.modal .modal-title .fa {
	margin-right: 8px;
	color: var(--primary);
}

.modal .modal-title.text-danger,
.modal .modal-title.text-danger .fa {
	color: #b54337;
}

.modal .modal-header .close {
	order: 2;
	flex: 0 0 auto;
	width: 34px;
	height: 34px;
	margin: 0 0 0 auto;
	padding: 0;
	float: none;
	border: 1px solid #dce8d8;
	border-radius: 8px;
	background: #ffffff;
	color: #5b7064;
	font-size: 24px;
	font-weight: 700;
	line-height: 30px;
	text-align: center;
	text-shadow: none;
	opacity: 1;
	transition: background-color 0.18s ease, border-color 0.18s ease, color 0.18s ease, transform 0.18s ease;
}

.modal .modal-header .close:hover,
.modal .modal-header .close:focus {
	border-color: rgba(75, 166, 75, 0.32);
	background: #edf7ed;
	color: #21422d;
	transform: translateY(-1px);
	outline: 0;
	opacity: 1;
}

.modal .modal-body {
	padding: 18px;
	color: #42584a;
	line-height: 1.65;
	overflow-wrap: anywhere;
}

.modal .modal-body > :last-child {
	margin-bottom: 0;
}

.modal .modal-footer {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	flex-wrap: wrap;
	gap: 10px;
	padding: 14px 18px 18px;
	border-top: 1px solid #e5efe2;
	background: #fbfdfb;
}

.modal .modal-footer:before,
.modal .modal-footer:after {
	display: none;
}

.modal .btn {
	border-radius: 8px;
	font-weight: 700;
	box-shadow: none;
	transition: background-color 0.18s ease, border-color 0.18s ease, color 0.18s ease, transform 0.18s ease;
}

.modal .btn:hover,
.modal .btn:focus {
	transform: translateY(-1px);
}

.modal .btn-default {
	border-color: #d8ead8;
	background: #ffffff;
	color: #31523a;
}

.modal .btn-default:hover,
.modal .btn-default:focus {
	border-color: rgba(75, 166, 75, 0.32);
	background: #f6fbf4;
	color: #21422d;
}

.modal .btn-primary {
	border-color: var(--primary);
	background: var(--primary);
}

.modal .btn-danger {
	border-color: #d76a5d;
	background: #d76a5d;
}

.modal .btn-success {
	border-color: #4ba64b;
	background: #4ba64b;
}

.modal .btn-info {
	border-color: #4b93a6;
	background: #4b93a6;
}

.modal .table {
	margin-bottom: 16px;
	border-color: #dce8d8;
	background: #ffffff;
	color: #2f4337;
}

.modal .table > thead > tr > th,
.modal .table > thead > tr > td {
	border-bottom: 1px solid #dce8d8;
	background: #f7fbf6;
	color: #17372f;
	font-weight: 800;
}

.modal .table > tbody > tr > td,
.modal .table > tbody > tr > th,
.modal .table > tfoot > tr > td,
.modal .table > tfoot > tr > th {
	border-color: #e2ece0;
}

.modal .table-bordered {
	border-color: #dce8d8;
}

.modal .pagination {
	margin: 0;
}

.modal .pagination > li > a,
.modal .pagination > li > span {
	border-color: #d8ead8;
	color: #31523a;
}

.modal .pagination > .active > span,
.modal .pagination > .active > a,
.modal .pagination > li > a:hover,
.modal .pagination > li > span:hover {
	border-color: var(--primary);
	background: var(--primary);
	color: #ffffff;
}

.modal .form-control {
	min-height: 38px;
	border: 1px solid #dce8d8;
	border-radius: 8px;
	box-shadow: none;
	color: #2f4337;
	transition: border-color 0.18s ease, box-shadow 0.18s ease;
}

.modal .form-control:focus {
	border-color: rgba(75, 166, 75, 0.56);
	box-shadow: 0 0 0 3px rgba(75, 166, 75, 0.12);
}

.modal .alert {
	border: 0;
	border-radius: 8px;
}

/* Fix form-group margin inside the modal */
.modal-body .form-group {
	margin: 0;
}

@media (max-width: 767px) {
	.modal .modal-dialog {
		margin: 14px 10px;
	}

	.modal .modal-header,
	.modal .modal-body,
	.modal .modal-footer {
		padding-left: 14px;
		padding-right: 14px;
	}

	.modal .modal-title {
		font-size: 17px;
	}
}

/* Fixed Sumernote Button Height */
.note-toolbar.panel-heading i {
	font-size: 14px;
}
/* Filemanager Folder Size */
#filemanager .fa-folder.fa-5x {
	font-size: 10.5em;
}
#extension-list {
	color: #4b525d;
}
#extension-list h2 {
	margin-top: 54px;
	margin-bottom: 44px;
}
#extension-list section {
	border: 1px solid #ddd;
}
#extension-list section > div {
	position: relative;
}
#extension-list section > div + div {
	border-top: 1px solid #ddd;
	padding: 10px;
}
#extension-list section:hover {
	border: 1px solid #1b80c2;
}
#extension-list > .row {
	margin-top: 40px;
}
#extension-list > .row > * {
	margin-bottom: 30px;
}

#extension-list .extension-preview {
	min-height: 150px;
}
#extension-list .extension-preview .extension-description {
	position: absolute;
	background-color: rgba(36, 45, 55, 0.9);
	color: #fff;
	padding: 10px;
	font-size: 14px;
	line-height: 16px;
	opacity: 0;
	height: 100%;
	width: 100%;
}
#extension-list .extension-preview .extension-description:hover {
	opacity: 1;
}
 @media screen and (min-width: 992px) and (max-width: 1199px) {
#extension-list .extension-preview {
	min-height: 123px;
}
#extension-list .extension-preview .extension-description {
	font-size: 12.5px;
	padding: 6px;
}
}
#extension-list .extension-preview img {
	margin: 0 auto;
}
#extension-list .extension-name {
	min-height: 100px;
}
#extension-list .extension-name p {
	color: #000;
	margin-bottom: 0;
	font-weight: 600;
}
#extension-list .extension-name p:first-child {
	font-size: 17px;
}
#extension-list .extension-name p span {
	color: #4b525d;
	font-weight: 400;
}
#extension-list .extension-name h4 a, #extension-list .extension-name p a {
	color: #000;
}
#extension-list .extension-name + div > .row {
	margin-top: 0;
}
 @media screen and (min-width: 992px) and (max-width: 1199px) {
#extension-list .extension-name + div > .row {
	font-size: 14px;
}
}
#extension-list i {
	color: #10b4e9;
}
#extension-list span {
	font-weight: 600;
}

.list-check {
	list-style: none;
}
.list-check li::before {
	font-family: "Font Awesome 7 Free";
	font-weight: 900;
	content: '\f00c';
	margin-left: -30px;
	width: 29px;
	display: inline-block;
	color: #7ebd38;
}
.list-check.list-color-blue li::before {
	color: #02afe9;
}

.well.filter {
	background-color: #ffffff;
}

#content .pest-item {
	padding: 10px 15px;
	margin-bottom: 10px;
	text-align: center;
	font-weight: bold;
	border-bottom: 1px solid #e2ece0;
}

#content .setmenu {
	padding: 0;
	border-right: 1px solid #d8ead8;
	background: #f8fbf7;
}

#content .setmenu ul {
	margin-top: 0;
	margin-bottom: 0;
	padding: 0;
}

#content .setmenu li {
	list-style: none;
	padding: 23px;
	font-family: 'Open Sans', sans-serif;
}

#content .setmenu li a {
	margin: 0;
	display: block;
	width: 100%;
	height: 100%;
	color: #31523a;
	font-size: 14px;
	cursor: pointer;
}

#content .setmenu li a:focus {
	text-decoration: none;
	outline: 2px solid var(--primary);
	outline-offset: -2px;
}

#content .setmenu li a:focus:not(:focus-visible) {
	outline: none;
}

#content .setmenu li:hover {
	background: #ffffff;
}

#content .setmenu li + li {
	border-top: 1px solid #d8ead8;
}

#content .setmenu .active {
	background: #ffffff;
	box-shadow: inset 4px 0 0 var(--primary);
}

#content .setting-plant {
	padding: 5px;
}

#content .setting-plant + .setting-plant {
	border-top: 1px solid #d8ead8;
}

#content .pest-card {
	display: flex;
	flex-direction: column;
	width: 100%;
	padding: 15px;
	border: 1px solid #d8ead8;
	border-radius: 8px;
	background: #ffffff;
}

#content .disease-color {
	width: 25%;
	border: solid;
	border-color: transparent;
	border-right-width: 10px;
	border-right-color: white;
}

#content .disease-first-radius {
	border-top-left-radius: 20px;
	border-bottom-left-radius: 20px;
}

#content .disease-last-radius {
	border-bottom-right-radius: 20px;
	border-top-right-radius: 20px;
	border-right-width: unset;
}

#content .opacity {
	opacity: 20%;
}

#content .farm-menu {
	text-align: center;
	padding: 10px;
	border: 1px solid #d8ead8;
	border-radius: 8px;
	background: #ffffff;
}

#content .farm-menu:hover {
	background-color: #f8fbf7 !important;
	cursor: pointer;
}

/* Modern shared UI surfaces */
#content {
	min-height: calc(100vh - var(--app-header-height));
	background: linear-gradient(180deg, #f7faf5 0%, #eef4ec 100%);
	padding-bottom: 30px;
}

#content > .page-header {
	margin: 0 0 20px 0;
	padding: 20px 0 4px;
	border-bottom: 1px solid rgba(75, 166, 75, 0.12);
	background: rgba(255, 255, 255, 0.54);
}

#content > .page-header .container-fluid {
	display: block;
}

#content > .page-header h1 {
	margin: 0 0 12px;
	font-size: 30px;
	line-height: 1.16;
	font-weight: 800;
	letter-spacing: 0;
	color: #17372f;
	text-shadow: none;
}

#content > .container-fluid {
	padding-left: 22px;
	padding-right: 22px;
}

#content .pull-right .btn {
	margin-left: 8px;
}

#content .panel.panel-default,
#content .well,
#content .tile {
	border: 1px solid #d8ead8;
	border-radius: 20px;
	background: #ffffff;
	box-shadow: 0 16px 34px rgba(49, 88, 49, 0.07);
	overflow: hidden;
}

#content .panel.panel-default {
	margin-bottom: 20px;
}

#content .panel-heading,
#content .panel-default > .panel-heading,
#content .tile-heading {
	padding: 18px 20px;
	border: 0;
	border-bottom: 1px solid #edf3eb;
	background: linear-gradient(180deg, #ffffff 0%, #f8fbf8 100%);
	color: #17372f;
}

#content .panel-title,
#content .tile-heading {
	font-size: 16px;
	font-weight: 800;
	line-height: 1.35;
	letter-spacing: 0;
	color: #17372f;
}

#content .panel-title .fa,
#content .tile-heading .fa {
	margin-right: 8px;
	color: var(--primary);
}

#content .panel-body {
	padding: 20px;
	background: #ffffff;
}

#content .table-responsive,
#content .table.responsive {
	border: 1px solid #d8ead8;
	border-radius: 8px;
	background: #ffffff;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.65);
	overflow-x: auto;
}

#content .table-responsive > .table,
#content .table.responsive > .table {
	border: 0;
	border-radius: 0;
}

#content .table {
	margin-bottom: 10px;
	border: 1px solid #d8ead8;
	border-collapse: separate;
	border-spacing: 0;
	border-radius: 8px;
	background: #ffffff;
	color: #304338;
	overflow: hidden;
}

#content .table-bordered {
	border-color: #d8ead8;
}

#content .table > thead > tr > td,
#content .table > thead > tr > th {
	padding: 13px 14px;
	border-color: #e2ece0;
	border-bottom: 1px solid #d8ead8;
	background: linear-gradient(180deg, #fbfdf9 0%, #f3f8f1 100%);
	color: #4f6857;
	font-size: 12px;
	font-weight: 800;
	letter-spacing: 0;
	line-height: 1.35;
	text-transform: uppercase;
	vertical-align: middle;
}

#content .table > tbody > tr > td,
#content .table > tbody > tr > th,
#content .table > tfoot > tr > td,
#content .table > tfoot > tr > th {
	padding: 12px 14px;
	border-color: #edf3eb;
	color: #304338;
	line-height: 1.45;
	vertical-align: middle;
}

#content .table-bordered > thead > tr > td:first-child,
#content .table-bordered > thead > tr > th:first-child,
#content .table-bordered > tbody > tr > td:first-child,
#content .table-bordered > tbody > tr > th:first-child,
#content .table-bordered > tfoot > tr > td:first-child,
#content .table-bordered > tfoot > tr > th:first-child {
	border-left: 0;
}

#content .table-bordered > thead > tr > td:last-child,
#content .table-bordered > thead > tr > th:last-child,
#content .table-bordered > tbody > tr > td:last-child,
#content .table-bordered > tbody > tr > th:last-child,
#content .table-bordered > tfoot > tr > td:last-child,
#content .table-bordered > tfoot > tr > th:last-child {
	border-right: 0;
}

#content .table-bordered > thead:first-child > tr:first-child > td,
#content .table-bordered > thead:first-child > tr:first-child > th,
#content .table-bordered > tbody:first-child > tr:first-child > td,
#content .table-bordered > tbody:first-child > tr:first-child > th {
	border-top: 0;
}

#content .table-bordered > tbody > tr:last-child > td,
#content .table-bordered > tbody > tr:last-child > th,
#content .table-bordered > tfoot > tr:last-child > td,
#content .table-bordered > tfoot > tr:last-child > th {
	border-bottom: 0;
}

#content .table-hover > tbody > tr,
#content .table-striped > tbody > tr {
	transition: background-color 0.18s ease, box-shadow 0.18s ease;
}

#content .table-hover > tbody > tr:hover,
#content .table-hover > tbody > tr:hover > td,
#content .table-hover > tbody > tr:hover > th {
	background-color: #f5faf3;
}

#content .table-hover > tbody > tr:hover > td:first-child,
#content .table-hover > tbody > tr:hover > th:first-child {
	box-shadow: inset 3px 0 0 var(--primary);
}

#content .table-striped > tbody > tr:nth-of-type(odd),
#content .table-striped > tbody > tr:nth-of-type(odd) > td,
#content .table-striped > tbody > tr:nth-of-type(odd) > th {
	background-color: #fbfdf9;
}

#content .table thead a {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	color: #31523a;
	font-weight: 800;
	text-decoration: none;
}

#content .table thead a:hover,
#content .table thead a:focus {
	color: var(--primary);
}

#content .table a.asc:after,
#content .table a.desc:after {
	margin-left: 6px;
	color: var(--primary);
	font-size: 11px;
}

#content .form-horizontal .control-label {
	color: #42584a;
	font-weight: 700;
}

#content .form-control {
	min-height: 38px;
	border: 1px solid #dce8d8;
	border-radius: 8px;
	box-shadow: none;
	color: #2f4337;
	transition: border-color 0.18s ease, box-shadow 0.18s ease;
}

#content input[type="file"].form-control,
.modal-dialog input[type="file"].form-control {
	height: auto;
	min-height: 42px;
	padding: 0 12px 0 0;
	overflow: hidden;
	border-color: #d8ead8;
	background: linear-gradient(180deg, #fbfdf9 0%, #ffffff 100%);
	color: #42584a;
	font-weight: 700;
	line-height: 40px;
	cursor: pointer;
}

#content input[type="file"].form-control:hover,
#content input[type="file"].form-control:focus,
.modal-dialog input[type="file"].form-control:hover,
.modal-dialog input[type="file"].form-control:focus {
	border-color: rgba(75, 166, 75, 0.48);
	background: #ffffff;
	box-shadow: 0 0 0 3px rgba(75, 166, 75, 0.1);
	outline: 0;
}

#content input[type="file"].form-control::file-selector-button,
.modal-dialog input[type="file"].form-control::file-selector-button {
	min-height: 40px;
	margin: 0 12px 0 0;
	padding: 0 15px;
	border: 0;
	border-right: 1px solid #d8ead8;
	background: #edf7ed;
	color: #31523a;
	font: inherit;
	font-weight: 800;
	line-height: 40px;
	letter-spacing: 0;
	cursor: pointer;
	transition: background-color 0.18s ease, color 0.18s ease, border-color 0.18s ease;
}

#content input[type="file"].form-control::-webkit-file-upload-button,
.modal-dialog input[type="file"].form-control::-webkit-file-upload-button {
	min-height: 40px;
	margin: 0 12px 0 0;
	padding: 0 15px;
	border: 0;
	border-right: 1px solid #d8ead8;
	background: #edf7ed;
	color: #31523a;
	font: inherit;
	font-weight: 800;
	line-height: 40px;
	letter-spacing: 0;
	cursor: pointer;
	transition: background-color 0.18s ease, color 0.18s ease, border-color 0.18s ease;
}

#content input[type="file"].form-control:hover::file-selector-button,
#content input[type="file"].form-control:focus::file-selector-button,
.modal-dialog input[type="file"].form-control:hover::file-selector-button,
.modal-dialog input[type="file"].form-control:focus::file-selector-button {
	border-color: rgba(75, 166, 75, 0.26);
	background: var(--primary);
	color: #ffffff;
}

#content input[type="file"].form-control:hover::-webkit-file-upload-button,
#content input[type="file"].form-control:focus::-webkit-file-upload-button,
.modal-dialog input[type="file"].form-control:hover::-webkit-file-upload-button,
.modal-dialog input[type="file"].form-control:focus::-webkit-file-upload-button {
	border-color: rgba(75, 166, 75, 0.26);
	background: var(--primary);
	color: #ffffff;
}

#content select.form-control,
.modal-dialog select.form-control,
body.auth-layout .fxt-form select.form-control:not(.auth-select-control) {
	min-height: 38px;
	padding-right: 42px;
	line-height: 1.35;
	cursor: pointer;
	background-color: #ffffff;
	background-image:
		linear-gradient(45deg, transparent 50%, #6f9678 50%),
		linear-gradient(135deg, #6f9678 50%, transparent 50%),
		linear-gradient(180deg, #f8fbf7 0%, #ffffff 100%);
	background-position:
		calc(100% - 18px) 50%,
		calc(100% - 13px) 50%,
		0 0;
	background-size: 5px 5px, 5px 5px, 100% 100%;
	background-repeat: no-repeat;
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
}

#content select.form-control::-ms-expand,
.modal-dialog select.form-control::-ms-expand,
body.auth-layout .fxt-form select.form-control:not(.auth-select-control)::-ms-expand {
	display: none;
}

#content select.form-control:hover,
.modal-dialog select.form-control:hover,
body.auth-layout .fxt-form select.form-control:not(.auth-select-control):hover {
	background-color: #fbfdf9;
}

#content select.form-control:focus,
.modal-dialog select.form-control:focus,
body.auth-layout .fxt-form select.form-control:not(.auth-select-control):focus {
	background-image:
		linear-gradient(45deg, transparent 50%, var(--primary) 50%),
		linear-gradient(135deg, var(--primary) 50%, transparent 50%),
		linear-gradient(180deg, #ffffff 0%, #f8fbf7 100%);
}

#content select.form-control[disabled],
#content select.form-control:disabled,
.modal-dialog select.form-control[disabled],
.modal-dialog select.form-control:disabled,
body.auth-layout .fxt-form select.form-control:not(.auth-select-control)[disabled],
body.auth-layout .fxt-form select.form-control:not(.auth-select-control):disabled {
	cursor: not-allowed;
	opacity: 0.72;
	background-color: #edf3eb;
	color: #82928a;
}

#content select.form-control[multiple],
#content select.form-control[size],
.modal-dialog select.form-control[multiple],
.modal-dialog select.form-control[size],
body.auth-layout .fxt-form select.form-control:not(.auth-select-control)[multiple],
body.auth-layout .fxt-form select.form-control:not(.auth-select-control)[size] {
	height: auto;
	padding-right: 12px;
	background-image: none;
	overflow: auto;
}

#content select.form-control option,
.modal-dialog select.form-control option,
body.auth-layout select.form-control option {
	color: #17372f;
	background-color: #ffffff;
}

#content select.form-control option:checked,
.modal-dialog select.form-control option:checked,
body.auth-layout select.form-control option:checked {
	color: #ffffff;
	background-color: var(--primary);
}

#content select.form-control option:disabled,
.modal-dialog select.form-control option:disabled,
body.auth-layout select.form-control option:disabled {
	color: #91a295;
}

select.form-control.ui-select__native {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	opacity: 0 !important;
	pointer-events: none !important;
}

.ui-select {
	position: relative;
	width: 100%;
}

.ui-select__button {
	width: 100%;
	min-height: 38px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	padding: 8px 38px 8px 12px;
	border: 1px solid #dce8d8;
	border-radius: 8px;
	background-color: #ffffff;
	background-image: linear-gradient(180deg, #f8fbf7 0%, #ffffff 100%);
	box-shadow: none;
	color: #2f4337;
	font: inherit;
	font-weight: 700;
	line-height: 1.35;
	letter-spacing: 0;
	text-align: left;
	cursor: pointer;
	transition: border-color 0.18s ease, box-shadow 0.18s ease, background-color 0.18s ease;
}

.ui-select__button:hover,
.ui-select__button:focus {
	border-color: rgba(75, 166, 75, 0.42);
	background-color: #fbfdf9;
	box-shadow: 0 0 0 3px rgba(75, 166, 75, 0.1);
	outline: 0;
}

.ui-select.is-open .ui-select__button {
	border-color: rgba(75, 166, 75, 0.56);
	box-shadow: 0 0 0 3px rgba(75, 166, 75, 0.12);
}

#content .has-error .ui-select__button,
body.auth-layout .has-error .ui-select__button {
	border-color: rgba(215, 106, 93, 0.72);
	box-shadow: 0 0 0 3px rgba(215, 106, 93, 0.1);
}

.ui-select.is-disabled .ui-select__button,
.ui-select__button:disabled {
	cursor: not-allowed;
	opacity: 0.72;
	background: #edf3eb;
	color: #82928a;
}

.ui-select__label {
	min-width: 0;
	display: block;
	flex: 1 1 auto;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.ui-select__chevron {
	position: absolute;
	right: 16px;
	top: 50%;
	width: 8px;
	height: 8px;
	border-right: 2px solid #6f9678;
	border-bottom: 2px solid #6f9678;
	pointer-events: none;
	transform: translateY(-64%) rotate(45deg);
	transition: transform 0.18s ease, border-color 0.18s ease;
}

.ui-select.is-open .ui-select__chevron {
	border-color: var(--primary);
	transform: translateY(-36%) rotate(225deg);
}

.ui-select__menu {
	position: absolute;
	z-index: 2060;
	display: none;
	overflow-y: auto;
	padding: 6px;
	border: 1px solid #d8ead8;
	border-radius: 8px;
	background: #ffffff;
	box-shadow: 0 16px 36px rgba(49, 88, 49, 0.16);
}

.ui-select__menu.is-open {
	display: block;
}

.ui-select__option,
.ui-select__empty {
	width: 100%;
	min-height: 34px;
	display: block;
	padding: 7px 10px;
	border: 0;
	border-radius: 8px;
	background: transparent;
	color: #17372f;
	font: inherit;
	font-weight: 700;
	line-height: 1.35;
	letter-spacing: 0;
	text-align: left;
	white-space: normal;
	cursor: pointer;
}

.ui-select__option:hover,
.ui-select__option:focus {
	background: #edf7ed;
	color: #17372f;
	outline: 0;
}

.ui-select__option.is-selected,
.ui-select__option[aria-selected="true"] {
	background: var(--primary);
	color: #ffffff;
}

.ui-select__option.is-disabled,
.ui-select__option:disabled {
	cursor: not-allowed;
	color: #91a295;
	background: transparent;
	opacity: 0.72;
}

.ui-select__group {
	padding: 8px 10px 5px;
	color: #6a7f70;
	font-size: 12px;
	font-weight: 800;
	line-height: 1.2;
	letter-spacing: 0;
}

body.auth-layout .auth-select-wrap--custom::after {
	display: none;
}

body.auth-layout .auth-language-field .ui-select__button {
	min-height: 48px;
	padding-right: 78px;
	color: #17372f;
}

body.auth-layout .auth-register-form .auth-language-field .ui-select__button {
	min-height: 44px;
	padding: 8px 44px;
}

body.auth-layout .auth-select-wrap--custom .auth-select-icon {
	z-index: 3;
}

#content textarea.form-control {
	min-height: 96px;
}

#content .form-control:focus {
	border-color: rgba(75, 166, 75, 0.56);
	box-shadow: 0 0 0 3px rgba(75, 166, 75, 0.12);
}

#content .input-group-addon {
	border-color: #dce8d8;
	background: #f5faf4;
	color: #4f6857;
}

#content .input-group.date .form-control,
.modal-dialog .input-group.date .form-control {
	border-color: #dce8d8;
	background: #ffffff;
}

#content .input-group.date .form-control:focus,
.modal-dialog .input-group.date .form-control:focus {
	position: relative;
	z-index: 3;
	border-color: rgba(75, 166, 75, 0.56);
	box-shadow: 0 0 0 3px rgba(75, 166, 75, 0.12);
}

#content .input-group.date .input-group-btn > .btn,
.modal-dialog .input-group.date .input-group-btn > .btn {
	min-height: 38px;
	border-color: #dce8d8;
	background: #f5faf4;
	color: #4f6857;
	box-shadow: none;
}

#content .input-group.date .input-group-btn > .btn:hover,
#content .input-group.date .input-group-btn > .btn:focus,
.modal-dialog .input-group.date .input-group-btn > .btn:hover,
.modal-dialog .input-group.date .input-group-btn > .btn:focus {
	border-color: rgba(75, 166, 75, 0.42);
	background: #edf7ed;
	color: var(--primary);
	transform: none;
	outline: 0;
}

#content .input-group.date .input-group-btn:last-child > .btn,
.modal-dialog .input-group.date .input-group-btn:last-child > .btn {
	border-top-right-radius: 8px;
	border-bottom-right-radius: 8px;
}

#content .input-group.date .input-group-btn .fa,
.modal-dialog .input-group.date .input-group-btn .fa {
	color: inherit;
}

.bootstrap-datetimepicker-widget.dropdown-menu {
	width: 286px;
	max-width: calc(100vw - 24px);
	padding: 10px;
	margin-top: 8px;
	border: 1px solid #d8ead8;
	border-radius: 8px;
	background: #ffffff;
	box-shadow: 0 18px 42px rgba(49, 88, 49, 0.18);
	color: #2f4337;
	font-family: inherit;
	font-size: 13px;
	line-height: 1.35;
	letter-spacing: 0;
	z-index: 99999 !important;
}

.bootstrap-datetimepicker-widget.timepicker-sbs {
	width: 620px;
}

.bootstrap-datetimepicker-widget.bottom:before {
	top: -8px;
	border-bottom-color: #d8ead8;
}

.bootstrap-datetimepicker-widget.bottom:after {
	top: -6px;
	border-bottom-color: #ffffff;
}

.bootstrap-datetimepicker-widget.top:before {
	bottom: -8px;
	border-top-color: #d8ead8;
}

.bootstrap-datetimepicker-widget.top:after {
	bottom: -6px;
	border-top-color: #ffffff;
}

.bootstrap-datetimepicker-widget > ul {
	padding: 0;
}

.bootstrap-datetimepicker-widget table {
	border-collapse: separate;
	border-spacing: 2px;
}

.bootstrap-datetimepicker-widget td,
.bootstrap-datetimepicker-widget th {
	border-radius: 8px;
	text-shadow: none;
}

.bootstrap-datetimepicker-widget th {
	height: 30px;
	line-height: 30px;
	color: #4f6857;
	font-weight: 800;
}

.bootstrap-datetimepicker-widget .dow {
	color: #6a7f70;
	font-size: 12px;
	font-weight: 800;
}

.bootstrap-datetimepicker-widget th.picker-switch {
	width: 160px;
	color: #17372f;
	font-size: 14px;
	font-weight: 800;
}

.bootstrap-datetimepicker-widget th.next,
.bootstrap-datetimepicker-widget th.prev {
	color: var(--primary);
	font-size: 18px;
}

.bootstrap-datetimepicker-widget thead tr:first-child th:hover,
.bootstrap-datetimepicker-widget td.day:hover,
.bootstrap-datetimepicker-widget td.hour:hover,
.bootstrap-datetimepicker-widget td.minute:hover,
.bootstrap-datetimepicker-widget td.second:hover,
.bootstrap-datetimepicker-widget td span:hover {
	background: #edf7ed;
	color: #17372f;
	cursor: pointer;
}

.bootstrap-datetimepicker-widget td {
	height: 38px;
	line-height: 38px;
	width: 38px;
}

.bootstrap-datetimepicker-widget td.day {
	height: 32px;
	line-height: 32px;
	width: 32px;
	font-weight: 700;
}

.bootstrap-datetimepicker-widget td.old,
.bootstrap-datetimepicker-widget td.new,
.bootstrap-datetimepicker-widget td span.old {
	color: #9aa99f;
}

.bootstrap-datetimepicker-widget td.today:before {
	right: 5px;
	bottom: 5px;
	border-bottom-color: var(--primary);
}

.bootstrap-datetimepicker-widget td.active,
.bootstrap-datetimepicker-widget td.active:hover,
.bootstrap-datetimepicker-widget td span.active {
	background-color: var(--primary);
	color: #ffffff;
	box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.18);
	text-shadow: none;
}

.bootstrap-datetimepicker-widget td.active.today:before {
	border-bottom-color: #ffffff;
}

.bootstrap-datetimepicker-widget td.disabled,
.bootstrap-datetimepicker-widget td.disabled:hover,
.bootstrap-datetimepicker-widget td span.disabled,
.bootstrap-datetimepicker-widget td span.disabled:hover,
.bootstrap-datetimepicker-widget th.disabled,
.bootstrap-datetimepicker-widget th.disabled:hover {
	background: transparent;
	color: #a6b3aa;
	cursor: not-allowed;
}

.bootstrap-datetimepicker-widget td span {
	width: 52px;
	height: 38px;
	line-height: 38px;
	margin: 4px 2px;
	border-radius: 8px;
	font-weight: 700;
}

.bootstrap-datetimepicker-widget a[data-action] {
	display: block;
	border-radius: 8px;
	color: var(--primary);
}

.bootstrap-datetimepicker-widget a[data-action]:hover,
.bootstrap-datetimepicker-widget a[data-action]:focus {
	background: #edf7ed;
	color: #17372f;
	outline: 0;
}

.bootstrap-datetimepicker-widget a[data-action]:active {
	box-shadow: none;
}

.bootstrap-datetimepicker-widget .timepicker-hour,
.bootstrap-datetimepicker-widget .timepicker-minute,
.bootstrap-datetimepicker-widget .timepicker-second {
	width: 58px;
	color: #17372f;
	font-size: 16px;
	font-weight: 800;
}

.bootstrap-datetimepicker-widget button[data-action],
.bootstrap-datetimepicker-widget .btn {
	border-radius: 8px;
	border-color: #d8ead8;
	background: #f5faf4;
	color: #4f6857;
	font-weight: 800;
	box-shadow: none;
}

.bootstrap-datetimepicker-widget button[data-action]:hover,
.bootstrap-datetimepicker-widget button[data-action]:focus,
.bootstrap-datetimepicker-widget .btn:hover,
.bootstrap-datetimepicker-widget .btn:focus {
	border-color: rgba(75, 166, 75, 0.42);
	background: #edf7ed;
	color: var(--primary);
	outline: 0;
}

.bootstrap-datetimepicker-widget ul.list-unstyled li div.timepicker div.timepicker-picker table.table-condensed tbody > tr > td {
	padding: 2px !important;
}

@media screen and (max-width: 767px) {
	.bootstrap-datetimepicker-widget.dropdown-menu,
	.bootstrap-datetimepicker-widget.timepicker-sbs {
		width: calc(100vw - 24px);
		max-width: calc(100vw - 24px);
	}
}

#content .btn {
	border-radius: 8px;
	font-weight: 700;
	box-shadow: none;
	transition: background-color 0.18s ease, border-color 0.18s ease, color 0.18s ease, transform 0.18s ease;
}

#content .btn:hover,
#content .btn:focus {
	transform: translateY(-1px);
}

#content .btn-primary {
	border-color: var(--primary);
	background: var(--primary);
}

#content .btn-default {
	border-color: #d8ead8;
	background: #ffffff;
	color: #31523a;
}

#content .btn-default:hover,
#content .btn-default:focus {
	border-color: rgba(75, 166, 75, 0.32);
	background: #f6fbf4;
	color: #21422d;
}

#content .btn-danger {
	border-color: #d76a5d;
	background: #d76a5d;
}

#content .btn-success {
	border-color: #4ba64b;
	background: #4ba64b;
}

#content .btn-info {
	border-color: #4b93a6;
	background: #4b93a6;
}

#content .alert {
	border: 0;
	border-radius: 14px;
	box-shadow: 0 12px 26px rgba(49, 88, 49, 0.08);
}

#content .alert .fa {
	margin-right: 8px;
}

#content .well {
	padding: 16px;
	background: #f8fbf8;
}

#content .tile {
	padding: 20px;
	color: #17372f;
}

#content .tile .tile-body {
	background: transparent;
	color: #17372f;
	text-shadow: none;
}

#content .tile .tile-body i {
	color: var(--primary);
	opacity: 1;
}

#content .tile .tile-footer {
	margin: 16px -20px -20px;
	padding: 12px 20px;
	border-top: 1px solid #edf3eb;
	background: #f8fbf7;
}

#content .pagination > li > a,
#content .pagination > li > span {
	border-color: #d8ead8;
	color: #31523a;
}

#content .pagination > .active > span,
#content .pagination > .active > a,
#content .pagination > li > a:hover,
#content .pagination > li > span:hover {
	border-color: var(--primary);
	background: var(--primary);
	color: #ffffff;
}

#content [id^="filter-"] .panel-heading,
#content [id*=" filter-"] .panel-heading {
	background: #f8fbf7;
}

/* Modern utility and legacy cleanup helpers */
.u-hidden,
#content .u-hidden,
body.auth-layout .u-hidden {
	display: none;
}

#content .u-lowercase,
body.auth-layout .u-lowercase {
	text-transform: lowercase;
}

#content .u-text-justify,
body.auth-layout .u-text-justify {
	text-align: justify;
}

#content .u-text-right {
	text-align: right !important;
}

#content .u-align-middle {
	vertical-align: middle;
}

#content .u-no-gutter {
	padding-left: 0 !important;
	padding-right: 0 !important;
}

#content .u-pad-actions {
	padding: 15px;
}

#content .u-pad-compact {
	padding: 10px;
}

#content .u-mt-10 {
	margin-top: 10px;
}

#content .u-ml-10 {
	margin-left: 10px;
}

#content .u-mr-16 {
	margin-right: 16px;
}

#content .u-m-15 {
	margin: 15px;
}

#content .u-full-width {
	width: 100%;
}

#content .u-pl-0 {
	padding-left: 0;
}

#content .u-pr-0 {
	padding-right: 0;
}

#content .u-float-right {
	float: right;
}

#content .u-float-left {
	float: left;
}

#content .u-inline-block {
	display: inline-block;
}

#content .u-vpad-label {
	padding-top: 9px;
}

#content .panel-body--flush {
	padding: 0;
	margin: 0;
}

#content .table-select-cell {
	width: 1px;
	white-space: nowrap;
}

#content .table-cell--flush {
	padding: 0 !important;
}

#content .table-cell--topless {
	border-top: 0 !important;
}

#content .table-col--5 { width: 5%; }
#content .table-col--10 { width: 10%; }
#content .table-col--15 { width: 15%; }
#content .table-col--20 { width: 20%; }
#content .table-col--40 { width: 40%; }
#content .table-col--55 { width: 55%; }
#content .table-col--70 { width: 70%; }

#content .table-responsive--flush {
	margin-bottom: 0;
}

#content .scroll-box {
	height: 150px;
	overflow: auto;
}

#content .scroll-box--with-gap {
	margin-bottom: 0;
}

#content .scroll-box--tall {
	max-height: 600px;
	overflow-y: auto;
}

#content .map-frame,
#content .chart-frame {
	width: 100%;
	overflow: hidden;
	border-radius: 8px;
	background: #f8fbf7;
}

#content .map-frame--standard {
	height: 520px;
}

#content .map-frame--farm {
	height: 620px;
}

#content .chart-frame--sm {
	height: 270px;
}

#content .chart-frame--auto {
	width: auto;
	height: auto;
}

#content .lottie-empty {
	width: 100%;
	height: 300px;
}

#content .inline-icon--muted {
	color: #91a295;
}

.inline-icon--muted {
	color: #91a295;
}

#content .inline-icon--dynamic {
	color: var(--icon-color);
}

.inline-icon--dynamic {
	color: var(--icon-color);
}

#content .btn--compact-icon {
	padding: 0 6px !important;
}

#content .btn--native-padding {
	padding: revert !important;
}

#content .btn--gap-left {
	margin-right: 10px;
}

#content td.text-left > .btn,
#content td.text-center > .btn,
#content td.text-right > .btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin-top: 2px;
	margin-bottom: 2px;
	vertical-align: middle;
}

#content td.text-left:has(> .btn),
#content td.text-center:has(> .btn),
#content td.text-right:has(> .btn) {
	white-space: nowrap;
}

#content td.text-left > .btn + .btn,
#content td.text-center > .btn + .btn,
#content td.text-right > .btn + .btn {
	margin-left: 6px;
}

#content .form-group--hidden {
	display: none;
}

#content .form-group__inline-date {
	padding-left: 15px !important;
	padding-right: 15px !important;
}

#content .form-control--readbox {
	height: 300px;
	overflow-y: scroll;
}

#content .image-preview--trap {
	max-height: 150px;
	margin-bottom: 5px;
	display: block;
}

#content .image-centered {
	margin: 0 auto;
}

#content .image-free-width {
	max-width: none;
}

#content .image-full-width {
	width: 100%;
}

#content .progress--inline {
	height: 38px;
	margin-bottom: 0;
}

#content .progress-bar--inline {
	width: var(--progress-value, 0%);
	background-color: var(--primary);
	line-height: 38px;
	font-size: 12px;
	font-weight: 700;
}

#content .farm-summary-row {
	padding: 10px;
}

#content .farm-summary-panel {
	padding: 18px;
	margin: 0;
	background: #f5f8f2;
}

#content .farm-summary-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 16px;
	align-items: stretch;
}

#content .farm-summary-pagination {
	padding: 16px 0 0 0;
	clear: both;
}

#content .farm-summary-card {
	display: flex;
	flex-direction: column;
	min-width: 0;
	min-height: 240px;
	padding: 16px;
	border: 1px solid #dfe9dd;
	border-radius: 8px;
	background: #ffffff;
	box-shadow: 0 10px 24px rgba(42, 79, 53, 0.08);
	cursor: pointer;
	transition: border-color 0.18s ease, box-shadow 0.18s ease, transform 0.18s ease;
}

#content .farm-summary-card:hover {
	border-color: rgba(75, 166, 75, 0.36);
	box-shadow: 0 14px 30px rgba(42, 79, 53, 0.13);
	transform: translateY(-2px);
}

#content .farm-summary-card__header {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 12px;
	min-width: 0;
	padding-bottom: 12px;
	border-bottom: 1px solid #edf2ea;
}

#content .farm-summary-card__title-group {
	min-width: 0;
}

#content .farm-summary-card__title {
	display: block;
	min-width: 0;
	color: #243f2d;
	font-size: 16px;
	font-weight: 700;
	line-height: 1.35;
	overflow-wrap: anywhere;
}

#content .farm-summary-card__title:hover,
#content .farm-summary-card__title:focus {
	color: #2f7d32;
	text-decoration: none;
}

#content .farm-summary-card__plant {
	display: inline-block;
	max-width: 100%;
	margin-top: 6px;
	padding: 3px 8px;
	border-radius: 8px;
	background: #eef5e8;
	color: #556554;
	font-size: 12px;
	font-weight: 700;
	line-height: 1.4;
	overflow-wrap: anywhere;
}

#content .farm-summary-actions {
	flex: 0 0 auto;
}

#content .farm-summary-action-toggle {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 30px;
	height: 30px;
	border-radius: 8px;
	color: #556554;
	background: #f8fbf7;
}

#content .farm-summary-action-toggle:hover,
#content .farm-summary-action-toggle:focus {
	color: #243f2d;
	background: #eef5e8;
	text-decoration: none;
}

#content .farm-summary-card__body {
	display: flex;
	gap: 14px;
	min-width: 0;
	padding: 16px 0;
}

#content .farm-summary-card__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 76px;
	width: 76px;
	height: 76px;
	border-radius: 8px;
	background: #f8fbf7;
}

#content .farm-summary-card__icon img {
	max-width: 64px;
	max-height: 64px;
}

#content .farm-summary-card__meta {
	display: flex;
	flex-direction: column;
	justify-content: center;
	gap: 9px;
	min-width: 0;
	color: #4f5f50;
}

#content .farm-summary-card__line {
	display: flex;
	align-items: flex-start;
	gap: 8px;
	min-width: 0;
	font-size: 13px;
	line-height: 1.45;
}

#content .farm-summary-card__line i {
	width: 14px;
	margin-top: 3px;
	color: #4b8a4d;
	text-align: center;
}

#content .farm-summary-card__line span {
	min-width: 0;
	overflow-wrap: anywhere;
}

#content .farm-summary-card__dates {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 10px;
	margin-top: auto;
}

#content .farm-summary-card__dates > div {
	min-width: 0;
	padding: 10px;
	border: 1px solid #e5eee1;
	border-radius: 8px;
	background: #fbfdf9;
}

#content .farm-summary-card__dates span {
	display: block;
	color: #75836f;
	font-size: 11px;
	font-weight: 700;
	line-height: 1.3;
	overflow-wrap: anywhere;
}

#content .farm-summary-card__dates strong {
	display: block;
	margin-top: 4px;
	color: #243f2d;
	font-size: 13px;
	line-height: 1.35;
	overflow-wrap: anywhere;
}

#content .farm-summary-menu {
	border-radius: 8px;
}

#content .farm-summary-link {
	color: #ffffff !important;
}

@media (max-width: 767px) {
	#content .farm-summary-panel {
		padding: 12px;
	}

	#content .farm-summary-grid {
		grid-template-columns: 1fr;
		gap: 12px;
	}

	#content .farm-summary-card {
		min-height: 0;
		padding: 14px;
	}

	#content .farm-summary-card__body {
		gap: 12px;
	}

	#content .farm-summary-card__dates {
		grid-template-columns: 1fr;
	}
}

#content .pesticide-accordion-toggle {
	height: 60px;
}

#content .pesticide-accordion-trigger {
	cursor: pointer;
}

#content .pesticide-accordion-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
}

#content .pesticide-accordion-row {
	display: none;
}

#content .pesticide-accordion-row thead th {
	position: sticky;
	top: 0;
	z-index: 2;
	background: #f8fbf7;
}

#content .table-subtext {
	font-size: 10px;
}

#content .table-sticky-head thead,
#content .table-sticky-head thead th,
#content .table-sticky-head thead td {
	position: sticky;
	top: -1px;
	z-index: 2;
	background: #f8fbf7;
}

#content thead.table-sticky-head,
#content thead.table-sticky-head th,
#content thead.table-sticky-head td {
	position: sticky;
	top: -1px;
	z-index: 2;
	background: #f8fbf7;
}

#content .station-settings__body {
	padding: 0;
}

#content .station-settings__content {
	padding: 15px;
}

#content .setting-content-readonly {
	padding-top: 9px;
}

#content .map-control,
.map-control {
	float: left;
	line-height: 0;
	margin: 10px;
	z-index: 10;
}

#content .map-control--delete,
.map-control--delete {
	margin: 5px;
	position: absolute;
	top: 0;
	left: 368px;
}

#content .map-control__button,
.map-control__button {
	display: block;
	position: relative;
	margin: 0;
	padding: 12px;
	overflow: hidden;
	border: 0;
	border-radius: 2px 0 0 2px;
	background: #ffffff;
	box-shadow: 0 1px 4px -1px rgba(0, 0, 0, 0.3);
	color: #565656;
	cursor: pointer;
	direction: ltr;
	font-family: Roboto, Arial, sans-serif;
	font-size: 11px;
	text-align: left;
	text-transform: none;
	user-select: none;
	appearance: none;
}

#content .map-control__button--sm,
.map-control__button--sm {
	padding: 6px;
}

#content .map-control__icon,
#content .map-control__icon-crop,
.map-control__icon,
.map-control__icon-crop {
	display: inline-block;
	position: relative;
	overflow: hidden;
}

#content .map-control__icon,
.map-control__icon {
	width: 16px;
	height: 16px;
}

#content .map-control__icon-crop,
.map-control__icon-crop {
	width: 12px;
	height: 12px;
}

#content .map-control-toolbar,
.map-control-toolbar {
	display: inline-flex;
	gap: 6px;
	align-items: center;
	margin: 10px;
	padding: 6px;
	border: 1px solid rgba(41, 111, 48, 0.18);
	border-radius: 8px;
	background: rgba(255, 255, 255, 0.96);
	box-shadow: 0 8px 24px rgba(31, 70, 41, 0.18);
}

#content .map-control-action,
.map-control-action {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	min-height: 42px;
	padding: 0 13px;
	border: 1px solid #d7e7d3;
	border-radius: 7px;
	background: #ffffff;
	color: #2f4a36;
	font-size: 13px;
	font-weight: 700;
	line-height: 1;
	box-shadow: none;
	cursor: pointer;
	transition: background 0.16s ease, border-color 0.16s ease, color 0.16s ease, opacity 0.16s ease;
}

#content .map-control-action i,
.map-control-action i {
	font-size: 16px;
}

#content .map-control-action:hover,
#content .map-control-action:focus,
.map-control-action:hover,
.map-control-action:focus {
	border-color: #7fb36f;
	background: #f1f8ef;
	color: #235b2d;
	outline: none;
}

#content .map-control-action.is-active,
.map-control-action.is-active {
	border-color: #4f8f42;
	background: #4f8f42;
	color: #ffffff;
}

#content .map-control-action--danger,
.map-control-action--danger {
	border-color: #f0c9c3;
	color: #9a3b30;
}

#content .map-control-action--danger:hover,
#content .map-control-action--danger:focus,
.map-control-action--danger:hover,
.map-control-action--danger:focus {
	border-color: #c86456;
	background: #fff4f1;
	color: #812f27;
}

#content .map-control-action--danger.is-active,
.map-control-action--danger.is-active {
	border-color: #c86456;
	background: #c86456;
	color: #ffffff;
}

#content .map-control-action:disabled,
.map-control-action:disabled {
	opacity: 0.48;
	cursor: not-allowed;
}

#content .phenology-layout__media,
#content .phenology-layout__detail {
	border-right: 1px solid #e2ece0;
}

#content .pest-card {
	border: 1px solid #d8ead8;
	border-radius: 8px;
	background: #ffffff;
	box-shadow: 0 12px 28px rgba(49, 88, 49, 0.06);
	display: flex;
	flex-direction: column;
	width: 100%;
	padding: 15px;
}

#content .pest-card--bordered {
	border: 1px solid #d8ead8;
}

#content .pest-item {
	border-bottom-color: #e2ece0;
	color: #31523a;
}

#content .pest-detail .header-cell,
#content .disease-detail .header-cell {
	width: 20%;
	color: #4f6857;
	font-weight: 800;
}

#content .disease-palette-table {
	margin-top: 20px;
}

#content .disease-color {
	background-color: var(--risk-color);
}

#content .no-results-copy {
	padding: 20px;
}

#content .chart-tooltip {
	min-width: 250px;
	padding: 10px 12px;
}

#content .chart-tooltip__title {
	margin-bottom: 6px;
	font-weight: 700;
}

#content .chart-tooltip__spacer {
	margin-top: 6px;
}

#content .swatch-option {
	display: inline-block;
	width: 200px;
	height: 200px;
	background-image: var(--swatch-image);
	background-position: center;
	background-size: cover;
}

#content .swatch-option__label {
	text-align: center;
	font-weight: 700;
}

#content .visit-delete-placeholder {
	visibility: hidden;
}

#content .ul-swatches-colors {
	list-style: none;
	text-align: left;
	overflow: hidden;
	padding: 0;
}

#content .ul-swatches-colors li {
	display: inline-block;
	position: relative;
	margin-right: 5px;
	padding: 2px;
	border: 1px solid transparent;
	border-radius: 8px;
}

#content .ul-swatches-colors .swatches-options:hover {
	border-color: rgba(75, 166, 75, 0.42);
}

#content .ul-swatches-colors .swatches-options.checked {
	border: 3px solid var(--primary);
}

#content .ul-swatches-colors .swatches-options a {
	float: left;
}

#content .option-swatches,
#content .loading {
	display: none;
}

#content .delete-image {
	width: auto !important;
	height: auto !important;
	padding: 8px 13px !important;
	border: 1px solid transparent;
	border-radius: 8px;
	color: #ffffff;
	background-color: #d76a5d !important;
	border-color: #c75b50;
}

#content .center {
	text-align: center;
	padding-top: 6px;
}

#content .block {
	display: inline-block;
}

#content .gallery-lightbox {
	display: none;
	position: fixed;
	z-index: 10001;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	padding-top: 100px;
	overflow: auto;
	background-color: rgba(0, 0, 0, 0.9);
}

#content .gallery-lightbox__content {
	position: relative;
	width: 90%;
	max-width: 1200px;
	margin: auto;
	padding: 0;
	background-color: #ffffff;
}

#content .gallery-lightbox__column {
	float: left;
	width: 25%;
}

#content .gallery-lightbox__close {
	position: absolute;
	top: 15px;
	right: 35px;
	color: #f1f1f1;
	font-size: 40px;
	font-weight: 700;
	transition: color 0.3s ease;
}

#content .gallery-lightbox__close:hover,
#content .gallery-lightbox__close:focus {
	color: #cbd3c7;
	cursor: pointer;
	text-decoration: none;
}

#content .gallery-lightbox__slide {
	display: none;
	opacity: 1;
}

#content .gallery-lightbox__nav {
	position: absolute;
	top: 50%;
	width: auto;
	margin-top: -50px;
	padding: 16px;
	border-radius: 0 3px 3px 0;
	background-color: rgba(0, 0, 0, 0.72);
	color: #ffffff;
	cursor: pointer;
	font-size: 40px;
	font-weight: 700;
	transition: background-color 0.6s ease;
	user-select: none;
}

#content .gallery-lightbox__nav--next {
	right: 0;
	border-radius: 3px 0 0 3px;
}

#content .gallery-lightbox__nav:hover {
	background-color: rgba(0, 0, 0, 0.88);
}

#content .gallery-lightbox__count {
	position: absolute;
	top: 0;
	padding: 8px 12px;
	color: #f2f2f2;
	font-size: 12px;
}

#content .gallery-lightbox__caption {
	padding: 2px 16px;
	background-color: #101510;
	color: #ffffff;
	text-align: center;
}

#content .gallery-lightbox__thumb {
	width: 100%;
	opacity: 0.6;
}

#content .gallery-lightbox__thumb.active,
#content .gallery-lightbox__thumb:hover {
	opacity: 1;
}

#content .gallery-lightbox img {
	margin-bottom: -4px;
}

#content .hover-shadow:hover {
	cursor: pointer;
	box-shadow: 0 10px 24px rgba(49, 88, 49, 0.16);
}

@media (max-width: 767px) {
	#content > .container-fluid {
		padding-left: 14px;
		padding-right: 14px;
	}

	#content > .page-header h1 {
		font-size: 25px;
	}
	#content > .page-header h1 + .breadcrumb {
		margin-left: 0;
	}

	#content .panel-heading,
	#content .panel-body,
	#content .tile {
		padding: 16px;
	}
	#content .table > thead > tr > td,
	#content .table > thead > tr > th,
	#content .table > tbody > tr > td,
	#content .table > tbody > tr > th,
	#content .table > tfoot > tr > td,
	#content .table > tfoot > tr > th {
		padding: 10px 12px;
	}
}

/* Auth layout */
body.auth-layout {
	min-height: 100%;
	font-size: 16px;
	font-family: 'Open Sans', sans-serif;
	line-height: 1.7;
	color: #42584a;
	background: #f6faf4;
}

body.auth-layout p,
body.auth-layout h1,
body.auth-layout h2,
body.auth-layout h3,
body.auth-layout h4,
body.auth-layout h5,
body.auth-layout h6 {
	color: inherit;
}

body.auth-layout a {
	text-decoration: none;
}

body.auth-layout ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

body.auth-layout .fxt-content-between {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 12px;
}

body.auth-layout .fxt-template-animation {
	position: relative;
	z-index: 1;
	width: 100%;
	min-height: 100vh;
	overflow: hidden;
	opacity: 0;
	transition: opacity 0.3s ease-in-out;
}

body.auth-layout .loaded.fxt-template-animation {
	opacity: 1;
}

body.auth-layout .fxt-template-animation .fxt-transformY-50 {
	opacity: 0;
	transform: translateY(30px);
}

body.auth-layout .loaded.fxt-template-animation .fxt-transformY-50 {
	opacity: 1;
	transform: translateY(0);
	transition: opacity 0.7s ease, transform 0.7s ease;
}

body.auth-layout .loaded.fxt-template-animation .fxt-transition-delay-1 { transition-delay: 0.08s; }
body.auth-layout .loaded.fxt-template-animation .fxt-transition-delay-2 { transition-delay: 0.16s; }
body.auth-layout .loaded.fxt-template-animation .fxt-transition-delay-3 { transition-delay: 0.24s; }
body.auth-layout .loaded.fxt-template-animation .fxt-transition-delay-4 { transition-delay: 0.32s; }
body.auth-layout .loaded.fxt-template-animation .fxt-transition-delay-5 { transition-delay: 0.4s; }
body.auth-layout .loaded.fxt-template-animation .fxt-transition-delay-6 { transition-delay: 0.48s; }
body.auth-layout .loaded.fxt-template-animation .fxt-transition-delay-7 { transition-delay: 0.56s; }
body.auth-layout .loaded.fxt-template-animation .fxt-transition-delay-8 { transition-delay: 0.64s; }
body.auth-layout .loaded.fxt-template-animation .fxt-transition-delay-9 { transition-delay: 0.72s; }
body.auth-layout .loaded.fxt-template-animation .fxt-transition-delay-10 { transition-delay: 0.8s; }

body.auth-layout .fxt-template-layout1 .fxt-bg-color,
body.auth-layout .fxt-template-layout1 .fxt-bg-img {
	min-height: 100vh;
	width: 100%;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	display: flex;
	align-items: center;
	justify-content: center;
}

body.auth-layout .fxt-template-layout1 .fxt-bg-color {
	padding: 50px 30px 42px;
	background: linear-gradient(180deg, #f8fbf6 0%, #eef5eb 100%);
}

body.auth-layout .fxt-template-layout1 .fxt-bg-img {
	position: relative;
	overflow: hidden;
}

body.auth-layout .fxt-template-layout1 .fxt-bg-img:after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(135deg, rgba(19, 55, 31, 0.26), rgba(75, 166, 75, 0.08));
}

body.auth-layout .fxt-template-layout1 .fxt-content {
	width: 100%;
	max-width: 470px;
	padding: 30px;
	border: 1px solid #d8ead8;
	border-radius: 24px;
	background: rgba(255, 255, 255, 0.94);
	box-shadow: 0 22px 50px rgba(42, 79, 53, 0.11);
}

body.auth-layout .fxt-template-layout1 .fxt-header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 18px;
	margin-bottom: 44px;
}

body.auth-layout .fxt-template-layout1 .fxt-header .fxt-logo {
	display: block;
	max-width: 260px;
}

body.auth-layout .fxt-template-layout1 .fxt-header .fxt-logo img {
	display: block;
	max-height: 76px;
	width: auto;
}

body.auth-layout .fxt-template-layout1 .fxt-header .fxt-page-switcher {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 10px;
}

body.auth-layout .fxt-template-layout1 .fxt-header .fxt-page-switcher .switcher-text1,
body.auth-layout .fxt-template-layout1 .switcher-text2 {
	font-size: 14px;
	font-weight: 700;
	color: #4f6857;
	transition: color 0.18s ease;
}

body.auth-layout .fxt-template-layout1 .fxt-header .fxt-page-switcher .switcher-text1:hover,
body.auth-layout .fxt-template-layout1 .switcher-text2:hover {
	color: var(--primary);
}

body.auth-layout .auth-language {
	position: relative;
	display: inline-flex;
	align-items: center;
}

body.auth-layout .auth-language__toggle {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	min-height: 34px;
	padding: 6px 10px;
	border: 1px solid #d7e7d5;
	border-radius: 8px;
	background: #ffffff;
	color: #335244;
	font-size: 13px;
	font-weight: 800;
	line-height: 1;
	box-shadow: 0 8px 18px rgba(49, 88, 49, 0.08);
	transition: border-color 0.18s ease, color 0.18s ease, box-shadow 0.18s ease, transform 0.18s ease;
}

body.auth-layout .auth-language__toggle:hover,
body.auth-layout .auth-language__toggle:focus,
body.auth-layout .auth-language.open .auth-language__toggle {
	border-color: rgba(75, 166, 75, 0.48);
	color: var(--primary);
	box-shadow: 0 12px 24px rgba(49, 88, 49, 0.12);
	transform: translateY(-1px);
	outline: none;
}

body.auth-layout .auth-language__toggle img {
	width: 21px;
	height: 15px;
	border-radius: 3px;
	object-fit: cover;
	box-shadow: 0 0 0 1px rgba(23, 55, 47, 0.08);
}

body.auth-layout .auth-language__toggle::after {
	margin-left: 0;
	color: #7fa987;
}

body.auth-layout .auth-language__menu {
	min-width: 190px;
	margin-top: 10px;
	padding: 6px;
	border: 1px solid #d8ead8;
	border-radius: 8px;
	background: #ffffff;
	box-shadow: 0 18px 36px rgba(42, 79, 53, 0.16);
}

body.auth-layout .auth-language__menu .divider {
	height: 1px;
	margin: 4px 2px;
	overflow: hidden;
	background: #edf5ec;
	border: 0;
}

body.auth-layout .auth-language__option {
	display: flex;
	align-items: center;
	gap: 9px;
	min-height: 38px;
	padding: 8px 10px;
	border-radius: 8px;
	color: #3f5949;
	font-size: 13px;
	font-weight: 700;
	line-height: 1.2;
	transition: background-color 0.18s ease, color 0.18s ease;
}

body.auth-layout .auth-language__option:hover,
body.auth-layout .auth-language__option:focus,
body.auth-layout .auth-language__option.is-active {
	background: rgba(75, 166, 75, 0.1);
	color: var(--primary);
	outline: none;
}

body.auth-layout .auth-language__option img {
	width: 22px;
	height: 16px;
	border-radius: 3px;
	object-fit: cover;
	box-shadow: 0 0 0 1px rgba(23, 55, 47, 0.08);
}

body.auth-layout .auth-language__option .fa {
	margin-left: auto;
	font-size: 12px;
	color: var(--primary);
}

body.auth-layout .fxt-template-layout1 .fxt-form {
	margin-bottom: 0;
}

body.auth-layout .fxt-template-layout1 .fxt-form h2 {
	margin: 0 0 8px;
	font-size: 30px;
	line-height: 1.15;
	font-weight: 800;
	letter-spacing: 0;
	color: #17372f;
}

body.auth-layout .fxt-template-layout1 .fxt-form p {
	margin: 0 0 28px;
	font-size: 15px;
	line-height: 1.6;
	color: #60756d;
}

body.auth-layout .fxt-template-layout1 .fxt-form .form-group {
	position: relative;
	z-index: 1;
	margin-bottom: 18px;
}

body.auth-layout .fxt-template-layout1 .fxt-form .form-group i {
	position: absolute;
	z-index: 1;
	right: 14px;
	top: 50%;
	transform: translateY(-50%);
	color: #91a295 !important;
}

body.auth-layout .fxt-template-layout1 .fxt-form .form-control {
	min-height: 48px;
	padding: 10px 44px 10px 14px;
	border: 1px solid #dce8d8;
	border-radius: 8px;
	box-shadow: none;
	color: #17372f;
	background: #ffffff;
}

body.auth-layout .fxt-template-layout1 .fxt-form .form-control:focus {
	border-color: rgba(75, 166, 75, 0.56);
	box-shadow: 0 0 0 3px rgba(75, 166, 75, 0.12);
}

body.auth-layout .fxt-template-layout1 .fxt-form .auth-field-label {
	display: block;
	margin: 0 0 7px;
	color: #4f6857;
	font-size: 13px;
	font-weight: 800;
	line-height: 1.2;
}

body.auth-layout .fxt-template-layout1 .fxt-form .auth-select-wrap {
	position: relative;
}

body.auth-layout .fxt-template-layout1 .fxt-form .auth-select-wrap::after {
	content: "";
	position: absolute;
	z-index: 2;
	right: 16px;
	top: 50%;
	width: 8px;
	height: 8px;
	border-right: 2px solid #7fa987;
	border-bottom: 2px solid #7fa987;
	pointer-events: none;
	transform: translateY(-64%) rotate(45deg);
}

body.auth-layout .fxt-template-layout1 .fxt-form .auth-language-field select.form-control,
body.auth-layout .fxt-template-layout1 .fxt-form .auth-language-field .auth-select-control {
	height: 48px;
	padding-right: 78px;
	font-weight: 700;
	cursor: pointer;
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
}

body.auth-layout .fxt-template-layout1 .fxt-form .auth-language-field select.form-control::-ms-expand {
	display: none;
}

body.auth-layout .fxt-template-layout1 .fxt-form .auth-language-field .auth-select-icon {
	right: 44px;
	color: #91a295 !important;
	pointer-events: none;
}

body.auth-layout .auth-register-page .fxt-bg-color {
	padding: 32px 24px;
	background:
		linear-gradient(180deg, rgba(248, 251, 246, 0.96) 0%, rgba(236, 244, 232, 0.96) 100%),
		#f4f8f2;
}

body.auth-layout .auth-register-page .fxt-content {
	max-width: 820px;
	padding: 28px;
	border-radius: 8px;
	background: rgba(255, 255, 255, 0.98);
	box-shadow: 0 18px 42px rgba(42, 79, 53, 0.12);
}

body.auth-layout .auth-register-page .fxt-header {
	align-items: flex-start;
	margin-bottom: 28px;
	padding-bottom: 18px;
	border-bottom: 1px solid #e6efe3;
}

body.auth-layout .auth-register-page .fxt-header .fxt-logo img {
	max-height: 64px;
}

body.auth-layout .auth-register-page .fxt-header .fxt-page-switcher {
	justify-content: flex-end;
}

body.auth-layout .auth-register-page .fxt-header .fxt-page-switcher .switcher-text1 {
	min-height: 34px;
	display: inline-flex;
	align-items: center;
	padding: 7px 11px;
	border: 1px solid #d8ead8;
	border-radius: 8px;
	background: #f8fbf7;
	color: #31523a;
	line-height: 1.2;
}

body.auth-layout .auth-register-page .fxt-header .fxt-page-switcher .switcher-text1:hover,
body.auth-layout .auth-register-page .fxt-header .fxt-page-switcher .switcher-text1:focus {
	background: #edf7ed;
	color: var(--primary);
}

body.auth-layout .auth-register-intro {
	max-width: 620px;
	margin-bottom: 22px;
}

body.auth-layout .auth-register-page .fxt-form h2 {
	margin-bottom: 10px;
	font-size: 29px;
	line-height: 1.14;
}

body.auth-layout .auth-register-page .fxt-form p {
	margin-bottom: 0;
	color: #60756d;
}

body.auth-layout .auth-register-form {
	display: grid;
	grid-template-columns: 1fr;
	gap: 15px 14px;
}

body.auth-layout .fxt-template-layout1 .fxt-form .auth-register-form .form-group {
	min-width: 0;
	padding-top: 0;
	padding-bottom: 0;
	margin-bottom: 0;
	border-top: 0;
}

body.auth-layout .fxt-template-layout1 .fxt-form .auth-register-form .form-group + .form-group {
	border-top: 0;
}

body.auth-layout .auth-register-form .auth-register-full {
	grid-column: 1 / -1;
}

body.auth-layout .auth-register-form .fxt-transformY-50 {
	position: relative;
	min-width: 0;
}

body.auth-layout .auth-register-form .form-control {
	width: 100%;
	min-width: 0;
	min-height: 46px;
	padding: 9px 44px 9px 14px;
	border-radius: 8px;
	background: linear-gradient(180deg, #ffffff 0%, #fbfdfb 100%);
}

body.auth-layout .auth-register-form .auth-field-label {
	display: block;
	margin: 0 0 7px;
	color: #31523a;
	font-size: 12px;
	font-weight: 800;
	line-height: 1.25;
	overflow-wrap: anywhere;
}

body.auth-layout .auth-register-form .form-group:not(.auth-language-field) .fxt-transformY-50 > i {
	top: auto;
	bottom: 14px;
	transform: none;
}

body.auth-layout .auth-register-form .auth-select-wrap::after {
	right: 15px;
}

body.auth-layout .auth-register-form .auth-language-field select.form-control,
body.auth-layout .auth-register-form .auth-language-field .auth-select-control {
	height: 46px;
	min-height: 46px;
	padding: 8px 44px 8px 44px;
	background: linear-gradient(180deg, #ffffff 0%, #f8fbf7 100%);
	line-height: 1.3;
	border-radius: 8px;
}

body.auth-layout .auth-register-form .auth-language-field .auth-select-icon {
	right: auto;
	left: 14px;
}

body.auth-layout .auth-register-form .auth-language-field .ui-select__button {
	min-height: 46px;
	padding: 9px 44px;
	border-radius: 8px;
}

body.auth-layout .auth-register-form .auth-phone-field .iti input.form-control,
body.auth-layout .auth-register-form .auth-phone-field .iti input[type="tel"].form-control,
body.auth-layout .auth-register-form .auth-phone-field .iti--allow-dropdown input.form-control,
body.auth-layout .auth-register-form .auth-phone-field .iti--allow-dropdown input[type="tel"].form-control {
	min-height: 46px;
	padding: 9px 44px 9px 60px;
}

body.auth-layout .auth-register-form .auth-register-check .fxt-transformY-50 {
	padding: 0;
}

body.auth-layout .auth-register-form .auth-register-consent {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	width: 100%;
	min-width: 0;
	padding: 11px 12px;
	border: 1px solid #e0ece0;
	border-radius: 8px;
	background: #f7fbf6;
	color: #536b5d;
	font-size: 13px;
	line-height: 1.45;
}

body.auth-layout .auth-register-form .auth-register-consent span {
	min-width: 0;
	overflow-wrap: anywhere;
}

body.auth-layout .auth-register-form .auth-register-consent a {
	font-weight: 800;
	color: var(--primary) !important;
}

body.auth-layout .auth-register-form .auth-register-consent a:hover,
body.auth-layout .auth-register-form .auth-register-consent a:focus {
	color: var(--secondary) !important;
	text-decoration: underline;
}

body.auth-layout .auth-register-form .auth-register-check input[type="checkbox"] {
	flex: 0 0 auto;
	margin: 2px 0 0;
}

body.auth-layout .auth-register-form .auth-register-submit {
	margin-top: 4px;
}

body.auth-layout .auth-register-form .auth-register-submit .fxt-btn-fill {
	width: 100%;
	min-height: 48px;
	border-radius: 8px;
	letter-spacing: 0;
}

body.auth-layout .auth-register-page .alert.ad {
	border-radius: 8px;
	margin-bottom: 18px;
}

body.auth-layout .auth-register-page .fxt-bg-img {
	background-position: center center;
}

body.auth-layout .auth-register-page .fxt-bg-img:after {
	background:
		linear-gradient(180deg, rgba(15, 45, 27, 0.12) 0%, rgba(15, 45, 27, 0.36) 100%),
		linear-gradient(135deg, rgba(75, 166, 75, 0.12), rgba(255, 255, 255, 0.04));
}

@media (min-width: 992px) {
	body.auth-layout .auth-register-form {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

body.auth-layout .fxt-template-layout1 .fxt-form .form-group.auth-phone-field {
	z-index: 30;
}

body.auth-layout .auth-phone-field .fxt-transformY-50 {
	position: relative;
}

body.auth-layout .auth-phone-field .iti {
	position: relative;
	z-index: 2;
	width: 100%;
}

body.auth-layout .auth-phone-field .iti input.form-control,
body.auth-layout .auth-phone-field .iti input[type="tel"].form-control,
body.auth-layout .auth-phone-field .iti--allow-dropdown input.form-control,
body.auth-layout .auth-phone-field .iti--allow-dropdown input[type="tel"].form-control {
	padding: 10px 44px 10px 60px;
}

body.auth-layout .auth-phone-field .iti__flag-container {
	left: 0;
	right: auto;
	padding: 4px 0 4px 4px;
	z-index: 4;
}

body.auth-layout .auth-phone-field .iti__selected-flag {
	min-width: 52px;
	padding: 0 10px 0 12px;
	border-radius: 8px 0 0 8px;
	background: #f6fbf4;
	transition: background-color 0.18s ease, box-shadow 0.18s ease;
}

body.auth-layout .auth-phone-field .iti__selected-flag:hover,
body.auth-layout .auth-phone-field .iti__selected-flag:focus {
	background: rgba(75, 166, 75, 0.1);
	box-shadow: inset -1px 0 0 rgba(75, 166, 75, 0.12);
	outline: none;
}

body.auth-layout .auth-phone-field .iti__arrow {
	margin-left: 7px;
	border-top-color: #7fa987;
}

body.auth-layout .auth-phone-field .iti__arrow--up {
	border-top: none;
	border-bottom-color: #7fa987;
}

body.auth-layout .iti--container {
	z-index: 3000;
}

body.auth-layout .iti__country-list {
	z-index: 3000;
	min-width: 280px;
	max-width: calc(100vw - 28px);
	max-height: 260px;
	margin-top: 10px;
	padding: 6px;
	border: 1px solid #d8ead8;
	border-radius: 8px;
	background: #ffffff;
	box-shadow: 0 18px 36px rgba(42, 79, 53, 0.16);
	white-space: normal;
}

body.auth-layout .iti__country {
	display: flex;
	align-items: center;
	gap: 9px;
	min-height: 38px;
	padding: 8px 10px;
	border-radius: 8px;
	color: #3f5949;
	font-size: 13px;
	line-height: 1.2;
	transition: background-color 0.18s ease, color 0.18s ease;
}

body.auth-layout .iti__country.iti__highlight,
body.auth-layout .iti__country:hover,
body.auth-layout .iti__country:focus {
	background: rgba(75, 166, 75, 0.1);
	color: var(--primary);
}

body.auth-layout .iti__flag-box,
body.auth-layout .iti__country-name {
	margin-right: 0;
}

body.auth-layout .iti__country-name {
	min-width: 0;
}

body.auth-layout .iti__dial-code {
	margin-left: auto;
	color: #7f9b86;
	font-weight: 700;
}

body.auth-layout .iti__divider {
	margin: 4px 2px;
	padding-bottom: 0;
	border-bottom-color: #edf5ec;
}

body.auth-layout.iti-mobile .iti--container {
	z-index: 3000;
	top: 24px;
	right: 14px;
	bottom: 24px;
	left: 14px;
}

body.auth-layout .fxt-template-layout1 .fxt-form input::placeholder {
	color: #8ea095;
}

body.auth-layout .fxt-template-layout1 .fxt-btn-fill {
	margin: 0;
	cursor: pointer;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 46px;
	padding: 10px 28px;
	border: 0;
	border-radius: 8px;
	background: var(--primary);
	color: #ffffff;
	font-size: 15px;
	font-weight: 800;
	box-shadow: 0 12px 26px rgba(75, 166, 75, 0.2);
	transition: background-color 0.18s ease, transform 0.18s ease, box-shadow 0.18s ease;
}

body.auth-layout .fxt-template-layout1 .fxt-btn-fill:hover,
body.auth-layout .fxt-template-layout1 .fxt-btn-fill:focus {
	background: var(--secondary);
	transform: translateY(-1px);
	box-shadow: 0 16px 30px rgba(75, 166, 75, 0.24);
	outline: none;
}

body.auth-layout .alert.ad {
	border: 0;
	border-radius: 14px;
	box-shadow: 0 12px 26px rgba(49, 88, 49, 0.08);
}

@media only screen and (max-width: 767px) {
	body.auth-layout .fxt-none-767 {
		display: none !important;
	}

	body.auth-layout .fxt-template-layout1 .fxt-bg-color {
		padding: 24px 14px;
	}

	body.auth-layout .fxt-template-layout1 .fxt-content {
		padding: 22px;
		border-radius: 20px;
	}

	body.auth-layout .auth-register-page .fxt-bg-color {
		padding: 18px 12px;
	}

	body.auth-layout .auth-register-page .fxt-content {
		padding: 18px;
		border-radius: 8px;
	}

	body.auth-layout .auth-register-page .fxt-header {
		gap: 12px;
		margin-bottom: 22px;
		padding-bottom: 14px;
	}

	body.auth-layout .auth-register-page .fxt-header .fxt-logo img {
		max-height: 54px;
	}

	body.auth-layout .auth-register-page .fxt-header .fxt-page-switcher {
		width: 100%;
		justify-content: flex-start;
	}

	body.auth-layout .auth-register-intro {
		margin-bottom: 18px;
	}

	body.auth-layout .auth-register-page .fxt-form h2 {
		font-size: 25px;
	}

	body.auth-layout .auth-register-form {
		gap: 13px;
	}

	body.auth-layout .auth-register-form .auth-register-consent {
		padding: 10px;
		font-size: 12px;
	}

	body.auth-layout .fxt-template-layout1 .fxt-header {
		margin-bottom: 34px;
	}

	body.auth-layout .fxt-template-layout1 .fxt-form h2 {
		font-size: 26px;
	}

	body.auth-layout .fxt-template-layout1.auth-register-page .fxt-header {
		margin-bottom: 22px;
	}

	body.auth-layout .fxt-template-layout1.auth-register-page .fxt-form h2 {
		font-size: 25px;
	}
}

.fd-page {
  padding-bottom: 30px;
}

.fd-shell,
.w2-shell {
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  overflow: visible;
}

.fd-section + .fd-section,
.fd-hero + .fd-section {
  margin-top: 24px;
}

.fd-hero {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(320px, 0.9fr);
  gap: 18px;
}

.fd-hero__main,
.fd-hero__metrics,
.fd-kpi,
.fd-panel {
  border: 1px solid #d8ead8;
  border-radius: 26px;
  background: #ffffff;
  box-shadow: 0 16px 34px rgba(49, 88, 49, 0.07);
}

.fd-hero__main {
  padding: 26px;
  background: linear-gradient(135deg, #4ba64b 0%, #3f9640 100%);
  border-color: #4ba64b;
  color: #ffffff;
  box-shadow: 0 22px 40px rgba(75, 166, 75, 0.22);
  display: flex;
  flex-direction: column;
}

.fd-hero__intro {
  display: flex;
  align-items: stretch;
  justify-content: space-between;
  gap: 24px;
  flex: 1 1 auto;
}

.fd-hero__copy {
  min-width: 0;
}

.fd-hero__art {
  flex: 0 0 168px;
  display: flex;
  align-items: flex-end;
  justify-content: center;
}

.fd-hero__art img {
  width: 100%;
  max-width: 150px;
  height: auto;
  opacity: 1;
  filter: brightness(0) saturate(100%) invert(100%) drop-shadow(0 18px 28px rgba(18, 64, 25, 0.18));
}

.fd-hero__rows {
  display: grid;
  gap: 12px;
  margin-top: 18px;
}

.fd-hero-row {
  padding: 14px 16px;
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.12);
}

.fd-hero-row__label {
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.72);
}

.fd-hero-row__text {
  margin-top: 8px;
  font-size: 14px;
  line-height: 1.6;
  color: #ffffff;
}

.fd-hero-row__badges {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 12px;
}

.fd-hero__title {
  margin: 16px 0 10px;
  font-size: 36px;
  line-height: 1.05;
  font-weight: 800;
  letter-spacing: -0.04em;
  color: #ffffff;
}

.fd-chip {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 9px 12px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.16);
  font-size: 12px;
  font-weight: 700;
  color: #ffffff;
}

.fd-chip--safe {
  background: rgba(255, 255, 255, 0.18);
}

.fd-chip--rain,
.fd-chip--info {
  background: #d9ecff;
  color: #175ea8;
}

.fd-chip--frost,
.fd-chip--danger {
  background: #ffe0df;
  color: #ae2e24;
}

.fd-chip--wind,
.fd-chip--neutral {
  background: #e7ecef;
  color: #4d5b63;
}

.fd-chip--heat,
.fd-chip--warning {
  background: #fff0d6;
  color: #9b5d00;
}

.fd-hero__metrics {
  padding: 16px;
  display: grid;
  gap: 12px;
}

.fd-stat {
  padding: 16px;
  border-radius: 20px;
  background: #f8fbf8;
}

.fd-stat__label,
.fd-stat__note {
  display: block;
}

.fd-stat__label {
  font-size: 11px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  font-weight: 700;
  color: #6e8575;
}

.fd-stat__value {
  display: block;
  margin-top: 8px;
  font-size: 26px;
  line-height: 1.15;
  font-weight: 800;
  color: #17372f;
}

.fd-stat__note {
  margin-top: 6px;
  font-size: 13px;
  line-height: 1.45;
  color: #60756d;
}

.fd-section__head {
  margin-bottom: 14px;
}

.fd-section__title {
  margin: 0;
  font-size: 26px;
  font-weight: 800;
  letter-spacing: -0.03em;
  color: #17372f;
}

.fd-section__text,
.fd-panel__text {
  margin: 8px 0 0;
  font-size: 13px;
  color: #6f857a;
}

.fd-kpi {
  height: 100%;
  padding: 20px;
  display: flex;
  flex-direction: column;
  background: linear-gradient(180deg, #ffffff 0%, #f8fbf8 100%);
}

.fd-kpi__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.fd-kpi__label {
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #6e8575;
}

.fd-kpi__icon {
  width: 46px;
  height: 46px;
  border-radius: 16px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #edf7ed;
  color: #4ba64b;
  font-size: 21px;
}

.fd-kpi__value {
  margin-top: 18px;
  font-size: 40px;
  line-height: 1.05;
  font-weight: 800;
  letter-spacing: -0.04em;
  color: #17372f;
  min-height: 48px;
}

.fd-kpi__link,
.fd-panel__link {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-top: auto;
  color: #4ba64b;
  font-weight: 700;
}

.fd-panel {
  height: 100%;
  padding: 22px;
}

.fd-module .panel {
  margin-bottom: 0;
}

.fd-panel__head {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 12px;
  margin-bottom: 16px;
}

.fd-panel__title {
  margin: 0;
  font-size: 22px;
  font-weight: 800;
  letter-spacing: -0.03em;
  color: #17372f;
}

.fd-panel__body {
  min-width: 0;
}

#fd-dashboard-map {
  width: 100%;
  height: 520px;
  border-radius: 18px;
  overflow: hidden;
}

#fd-dashboard-map .gm-style-iw-c {
  padding: 0;
  border: 0;
  border-radius: 8px;
  box-shadow: 0 18px 42px rgba(28, 54, 43, 0.22);
  overflow: hidden;
}

#fd-dashboard-map .gm-style-iw-d {
  overflow: hidden !important;
}

#fd-dashboard-map .gm-style-iw-chr {
  display: none !important;
}

#fd-dashboard-map .gm-style-iw-tc::after {
  background: #ffffff;
  box-shadow: 2px 2px 4px rgba(28, 54, 43, 0.08);
}

#fd-dashboard-map .gm-ui-hover-effect {
  display: none !important;
}

.fd-map-marker {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 38px;
  height: 38px;
  transform: translateY(-4px);
}

.fd-map-marker img {
  display: block;
  width: 38px;
  height: 38px;
  object-fit: contain;
}

.fd-map-tooltip {
  position: relative;
  min-width: 300px;
  max-width: 340px;
  padding: 0;
  background: #ffffff;
  color: #21342a;
}

.fd-map-tooltip__close {
  position: absolute;
  top: 10px;
  right: 10px;
  z-index: 2;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  padding: 0;
  border: 1px solid rgba(219, 231, 221, 0.9);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.92);
  color: #566b5f;
  font-size: 20px;
  line-height: 1;
  box-shadow: 0 5px 14px rgba(33, 52, 42, 0.12);
  cursor: pointer;
}

.fd-map-tooltip__close:hover,
.fd-map-tooltip__close:focus {
  background: #ffffff;
  color: #21342a;
  outline: 0;
}

.fd-map-tooltip__header {
  display: grid;
  grid-template-columns: 40px minmax(0, 1fr);
  column-gap: 10px;
  row-gap: 6px;
  align-items: center;
  padding: 14px 54px 14px 14px;
  border-bottom: 1px solid #e4ece6;
  background: linear-gradient(135deg, #f7fbf7 0%, #f3f6f8 100%);
}

.fd-map-tooltip__marker {
  grid-row: 1 / span 2;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border: 1px solid #dbe8dd;
  border-radius: 8px;
  background: #ffffff;
  box-shadow: 0 8px 16px rgba(43, 76, 55, 0.08);
}

.fd-map-tooltip__marker img {
  display: block;
  width: 28px;
  height: 28px;
  object-fit: contain;
}

.fd-map-tooltip__identity {
  min-width: 0;
}

.fd-map-tooltip__eyebrow {
  margin-bottom: 3px;
  font-size: 11px;
  line-height: 1.2;
  font-weight: 700;
  text-transform: uppercase;
  color: #6f857a;
}

.fd-map-tooltip__title {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 15px;
  line-height: 1.35;
  font-weight: 800;
  color: #17372f;
  overflow-wrap: anywhere;
}

.fd-map-tooltip__status {
  grid-column: 2;
  justify-self: start;
  align-self: center;
  padding: 5px 8px;
  border-radius: 8px;
  font-size: 11px;
  line-height: 1.2;
  font-weight: 800;
  white-space: nowrap;
}

.fd-map-tooltip__status--online {
  background: #e7f6ea;
  color: #2f7f43;
}

.fd-map-tooltip__status--stale {
  background: #fff0d6;
  color: #8c5a00;
}

.fd-map-tooltip__status--none {
  background: #eef2f0;
  color: #63766c;
}

.fd-map-tooltip__metrics {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  padding: 12px;
}

.fd-map-tooltip__metric {
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr);
  grid-template-areas:
    "icon label"
    "icon value";
  column-gap: 9px;
  row-gap: 2px;
  align-items: center;
  min-width: 0;
  padding: 10px;
  border: 1px solid #e4ece6;
  border-radius: 8px;
  background: #fbfdfb;
}

.fd-map-tooltip__metric--wide {
  grid-column: 1 / -1;
  grid-template-columns: 28px minmax(0, 1fr);
}

.fd-map-tooltip__metric-icon {
  grid-area: icon;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border-radius: 8px;
  font-size: 14px;
}

.fd-map-tooltip__metric-icon--temperature {
  background: #ffe8df;
  color: #b84f2d;
}

.fd-map-tooltip__metric-icon--humidity {
  background: #e4f1fb;
  color: #2d79a8;
}

.fd-map-tooltip__metric-icon--time {
  background: #edf3ea;
  color: #50745a;
}

.fd-map-tooltip__metric-label {
  grid-area: label;
  font-size: 12px;
  line-height: 1.25;
  font-weight: 700;
  color: #6f857a;
}

.fd-map-tooltip__metric-value {
  grid-area: value;
  display: block;
  min-width: 0;
  font-size: 14px;
  line-height: 1.25;
  font-weight: 800;
  color: #21342a;
  overflow-wrap: anywhere;
}

.fd-map-tooltip__actions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  padding: 0 12px 12px;
}

.fd-map-tooltip__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  min-height: 38px;
  padding: 9px 10px;
  border: 1px solid #dbe7dd;
  border-radius: 8px;
  background: #ffffff;
  color: #355a43;
  font-size: 12px;
  line-height: 1.2;
  font-weight: 800;
  text-align: center;
  text-decoration: none;
}

.fd-map-tooltip__button:hover,
.fd-map-tooltip__button:focus {
  border-color: #b9d2bd;
  background: #f4faf4;
  color: #245535;
  text-decoration: none;
}

.fd-map-tooltip__button--primary {
  border-color: #2f8f4e;
  background: #2f8f4e;
  color: #ffffff;
}

.fd-map-tooltip__button--primary:hover,
.fd-map-tooltip__button--primary:focus {
  border-color: #267a41;
  background: #267a41;
  color: #ffffff;
}

.fd-map-tooltip--stale {
  box-shadow: inset 4px 0 0 #d8a31f;
}

.fd-map-tooltip--none {
  box-shadow: inset 4px 0 0 #9aa8a0;
}

.fd-list {
  display: grid;
  gap: 12px;
}

.fd-list__item {
  padding: 14px 16px;
  border: 1px solid #e3ece3;
  border-radius: 16px;
  background: #fbfdfb;
}

.fd-list__title {
  display: block;
  font-size: 14px;
  line-height: 1.5;
  color: #21342a;
}

.fd-list__title--rich a {
  color: #2f8f4e;
  font-weight: 700;
}

.fd-list__meta {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 8px;
  font-size: 12px;
  color: #6f857a;
}

.fd-empty {
  padding: 36px 18px;
  border-radius: 18px;
  background: #f7faf7;
  text-align: center;
  color: #6f857c;
}

.fd-section .row > [class*='col-'] {
  margin-bottom: 24px;
}

.fd-panel--forecast {
  overflow: hidden;
}

.dashboard-forecast-widget .dfw-wrap {
  padding: 0;
}

.dashboard-forecast-widget .dfw-top,
.dashboard-forecast-widget .dfw-footer {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
}

.dashboard-forecast-widget .dfw-place {
  min-width: 0;
}

.dashboard-forecast-widget .dfw-location {
  font-size: 16px;
  font-weight: 400;
  color: #17372f;
  line-height: 1.5;
}

.dashboard-forecast-widget .dfw-updated,
.dashboard-forecast-widget .dfw-note {
  margin-top: 6px;
  font-size: 14px;
  line-height: 1.5;
  color: #6f857a;
}

.dashboard-forecast-widget .dfw-alert {
  margin-bottom: 14px;
  padding: 12px 14px;
  border-radius: 14px;
}

.dashboard-forecast-widget .dfw-alert-warning {
  background: #fff3df;
  color: #8c5a00;
}

.dashboard-forecast-widget .dfw-alert-danger {
  background: #ffe6e4;
  color: #a23128;
}

.dashboard-forecast-widget .dfw-ops {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
  margin-top: 18px;
}

.dashboard-forecast-widget .dfw-card {
  padding: 16px 18px;
  border: 1px solid #dce9dc;
  border-radius: 18px;
  background: #fbfdfb;
}

.dashboard-forecast-widget .dfw-card-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 10px;
}

.dashboard-forecast-widget .dfw-card-label {
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #6e8575;
}

.dashboard-forecast-widget .dfw-chip {
  display: inline-flex;
  padding: 8px 12px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 700;
}

.dashboard-forecast-widget .dfw-chip-success {
  background: #e7f6ea;
  color: #2f8f4e;
}

.dashboard-forecast-widget .dfw-chip-warning {
  background: #fff0d6;
  color: #9b5d00;
}

.dashboard-forecast-widget .dfw-chip-danger {
  background: #ffe0df;
  color: #ae2e24;
}

.dashboard-forecast-widget .dfw-card-text {
  margin-top: 14px;
  font-size: 15px;
  line-height: 1.6;
  color: #21342a;
}

.dashboard-forecast-widget .dfw-focus {
  display: flex;
  gap: 10px;
  align-items: flex-start;
  margin-top: 18px;
  padding: 14px 16px;
  border-radius: 16px;
  background: #f1f7f1;
  color: #355a43;
}

.dashboard-forecast-widget .dfw-title {
  margin: 24px 0 14px;
  font-size: 24px;
  font-weight: 800;
  color: #17372f;
}

.dashboard-forecast-widget .dfw-days {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: 14px;
}

.dashboard-forecast-widget .dfw-day {
  position: relative;
  padding: 16px 14px;
  border: 1px solid #dce9dc;
  border-radius: 18px;
  background: linear-gradient(180deg, #f7fbf5 0%, #ffffff 100%);
  text-align: center;
  box-shadow: 0 10px 24px rgba(36, 64, 45, 0.05);
  transition: transform 0.2s ease, box-shadow 0.2s ease;
  overflow: hidden;
}

.dashboard-forecast-widget .dfw-day:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  width: 5px;
  background: #4ba64b;
}

.dashboard-forecast-widget .dfw-day:hover {
  transform: translateY(-2px);
  box-shadow: 0 16px 28px rgba(36, 64, 45, 0.08);
}

.dashboard-forecast-widget .dfw-day-label {
  font-size: 14px;
  font-weight: 800;
  color: #21342a;
}

.dashboard-forecast-widget .dfw-day-date,
.dashboard-forecast-widget .dfw-day-rain {
  margin-top: 6px;
  font-size: 13px;
  color: #6f857a;
}

.dashboard-forecast-widget .dfw-day-icon {
  margin-top: 14px;
  width: 50px;
  height: 50px;
  margin-left: auto;
  margin-right: auto;
  border-radius: 16px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 24px;
  color: #4ba64b;
  background: #edf7ed;
}

.dashboard-forecast-widget .dfw-day-text {
  margin-top: 12px;
  font-size: 14px;
  line-height: 1.45;
  color: #355a43;
}

.dashboard-forecast-widget .dfw-day-temp {
  margin-top: 14px;
  font-size: 16px;
  font-weight: 800;
  color: #17372f;
}

.dashboard-forecast-widget .dfw-day--field,
.dashboard-forecast-widget .dfw-day--clear {
  background: linear-gradient(180deg, #f7fbf5 0%, #ffffff 100%);
  border-color: #dbead8;
}

.dashboard-forecast-widget .dfw-day--cloud {
  background: linear-gradient(180deg, #f1f5f7 0%, #fbfcfc 100%);
  border-color: #d7e0e5;
}

.dashboard-forecast-widget .dfw-day--fog {
  background: linear-gradient(180deg, #f2f4f1 0%, #fafbf9 100%);
  border-color: #dde2db;
}

.dashboard-forecast-widget .dfw-day--rain {
  background: linear-gradient(180deg, #eef7fb 0%, #f8fcfe 100%);
  border-color: #d7e8f5;
}

.dashboard-forecast-widget .dfw-day--snow {
  background: linear-gradient(180deg, #f2f8fc 0%, #fbfdff 100%);
  border-color: #d7e6f2;
}

.dashboard-forecast-widget .dfw-day--field:before,
.dashboard-forecast-widget .dfw-day--clear:before {
  background: #4ba64b;
}

.dashboard-forecast-widget .dfw-day--cloud:before {
  background: #8ca0ad;
}

.dashboard-forecast-widget .dfw-day--fog:before {
  background: #98a28c;
}

.dashboard-forecast-widget .dfw-day--rain:before {
  background: #4f8fd1;
}

.dashboard-forecast-widget .dfw-day--snow:before {
  background: #8fb9da;
}

.dashboard-forecast-widget .dfw-day--tone-danger {
  box-shadow: 0 14px 28px rgba(159, 49, 49, 0.08);
}

.dashboard-forecast-widget .dfw-day--tone-warning {
  box-shadow: 0 14px 28px rgba(157, 111, 6, 0.08);
}

.dashboard-forecast-widget .dfw-day--clear .dfw-day-icon,
.dashboard-forecast-widget .dfw-day--field .dfw-day-icon {
  color: #4f9f48;
  background: #edf7ed;
}

.dashboard-forecast-widget .dfw-day--cloud .dfw-day-icon,
.dashboard-forecast-widget .dfw-day--fog .dfw-day-icon {
  color: #6f8794;
  background: #e7edf1;
}

.dashboard-forecast-widget .dfw-day--rain .dfw-day-icon {
  color: #2d79c7;
  background: #dceaf8;
}

.dashboard-forecast-widget .dfw-day--snow .dfw-day-icon,
.dashboard-forecast-widget .dfw-day--tone-danger .dfw-day-icon {
  color: #6f9bbd;
  background: #e7f1fa;
}

.dashboard-forecast-widget .dfw-day--rain .dfw-day-label,
.dashboard-forecast-widget .dfw-day--rain .dfw-day-temp {
  color: #1f5d97;
}

.dashboard-forecast-widget .dfw-day--snow .dfw-day-label,
.dashboard-forecast-widget .dfw-day--snow .dfw-day-temp,
.dashboard-forecast-widget .dfw-day--tone-danger .dfw-day-label,
.dashboard-forecast-widget .dfw-day--tone-danger .dfw-day-temp {
  color: #9f2f2f;
}

.dashboard-forecast-widget .dfw-day--cloud .dfw-day-label,
.dashboard-forecast-widget .dfw-day--cloud .dfw-day-temp,
.dashboard-forecast-widget .dfw-day--fog .dfw-day-label,
.dashboard-forecast-widget .dfw-day--fog .dfw-day-temp {
  color: #4d6470;
}

.dashboard-forecast-widget .dfw-footer {
  margin-top: 18px;
  padding-top: 18px;
  border-top: 1px solid #e6efe6;
  justify-content: flex-end;
}

.dashboard-forecast-widget .dfw-link {
  color: #2f8f4e;
  font-weight: 800;
}

.weather2-dashboard,
.weather2-dashboard * {
  box-sizing: border-box;
}

.weather2-dashboard {
  padding-bottom: 30px;
  overflow-x: hidden;
}

.w2-stack,
.w2-focus,
.w2-cards,
.w2-alerts,
.w2-summary,
.w2-charts,
.w2-forecast-grid,
.w2-brief,
.w2-critical-mini {
  display: grid;
  gap: 16px;
  min-width: 0;
}

.w2-stack {
  gap: 22px;
}

.w2-focus {
  grid-template-columns: minmax(0, 1.15fr) minmax(300px, 0.95fr) minmax(300px, 0.95fr);
  align-items: stretch;
}

.w2-panel,
.w2-focus-card,
.w2-card,
.w2-alert,
.w2-summary-card,
.w2-forecast-card,
.w2-chart {
  border: 1px solid #d8ead8;
  border-radius: 26px;
  background: #fff;
  box-shadow: 0 16px 34px rgba(49, 88, 49, 0.07);
  min-width: 0;
}

.w2-focus-card {
  padding: 24px;
  position: relative;
  overflow: hidden;
}

.w2-focus-card:before {
  content: "";
  position: absolute;
  inset: auto -30px -30px auto;
  width: 140px;
  height: 140px;
  border-radius: 999px;
  background: rgba(75, 166, 75, 0.08);
}

.w2-focus-station {
  background: linear-gradient(135deg, #4ba64b 0%, #3f9640 100%);
  border-color: #4ba64b;
  color: #fff;
  box-shadow: 0 22px 40px rgba(75, 166, 75, 0.22);
}

.w2-focus-station:before {
  background: rgba(255, 255, 255, 0.12);
}

.w2-focus-label {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-size: 12px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  font-weight: 700;
}

.w2-focus-station .w2-focus-label {
  color: rgba(255, 255, 255, 0.88);
}

.w2-focus-label i {
  width: 34px;
  height: 34px;
  border-radius: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(75, 166, 75, 0.12);
  color: #4ba64b;
}

.w2-focus-station .w2-focus-label i {
  background: rgba(255, 255, 255, 0.18);
  color: #fff;
}

.w2-station-title {
  margin: 18px 0 0;
  font-size: 34px;
  line-height: 1.03;
  font-weight: 800;
  letter-spacing: -0.04em;
}

.w2-station-location {
  margin: 10px 0 0;
  font-size: 15px;
  color: rgba(255, 255, 255, 0.84);
}

.w2-updated {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-top: 18px;
  padding: 12px 16px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.14);
  font-size: 13px;
  font-weight: 700;
  color: #fff;
}

.w2-station-summary {
  margin-top: 20px;
  padding-top: 18px;
  border-top: 1px solid rgba(255, 255, 255, 0.16);
  display: grid;
  gap: 10px;
}

.w2-station-summary-title {
  font-size: 12px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  font-weight: 700;
  color: rgba(255, 255, 255, 0.78);
}

.w2-station-summary-item {
  display: flex;
  gap: 12px;
  align-items: flex-start;
  padding: 12px 14px;
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.1);
  color: #fff;
}

.w2-station-summary-item.is-clickable {
  cursor: pointer;
  transition: transform 0.18s ease, box-shadow 0.18s ease, background-color 0.18s ease;
}

.w2-station-summary-item.is-clickable:hover {
  transform: translateY(-1px);
  background: rgba(255, 255, 255, 0.14);
  box-shadow: 0 10px 22px rgba(20, 48, 29, 0.12);
}

.w2-station-summary-item.is-clickable:focus,
.w2-station-summary-item.is-clickable:focus-visible {
  outline: none;
  transform: translateY(-1px);
  background: rgba(255, 255, 255, 0.15);
  box-shadow: 0 0 0 2px rgba(223, 240, 223, 0.6), 0 10px 22px rgba(20, 48, 29, 0.12);
}

.w2-station-summary-item i {
  width: 18px;
  flex: 0 0 18px;
  margin-top: 2px;
  color: #dff0df;
}

.w2-station-summary-item strong {
  display: block;
  font-size: 12px;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.72);
}

.w2-station-summary-item span {
  display: block;
  margin-top: 4px;
  font-size: 13px;
  line-height: 1.35;
  color: #fff;
}

.w2-focus-head {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 16px;
}

.w2-focus-icon {
  width: 52px;
  height: 52px;
  border-radius: 18px;
  background: #edf7ed;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #4ba64b;
  font-size: 22px;
  flex: 0 0 auto;
}

.w2-focus-title {
  margin: 16px 0 0;
  font-size: 13px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #6e8575;
  font-weight: 700;
}

.w2-focus-main {
  margin-top: 10px;
  font-size: 29px;
  line-height: 1.1;
  font-weight: 800;
  color: #17372f;
  letter-spacing: -0.04em;
}

.w2-focus-desc {
  margin-top: 10px;
  color: #5f7667;
  font-size: 14px;
}

.w2-brief {
  margin-top: 16px;
}

.w2-brief-item {
  display: flex;
  gap: 10px;
  align-items: flex-start;
  padding: 12px 14px;
  border-radius: 16px;
  background: #f5faf4;
  color: #53695d;
  font-size: 13px;
}

.w2-brief-item i {
  margin-top: 2px;
  color: #4ba64b;
}

.w2-critical-mini {
  margin-top: 16px;
}

.w2-critical-mini-item {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: center;
  padding: 12px 14px;
  border-radius: 16px;
  background: #f6faf5;
}

.w2-critical-mini-item strong {
  display: block;
  color: #17372f;
  font-size: 13px;
}

.w2-critical-mini-item span {
  display: block;
  color: #6f857c;
  font-size: 12px;
  margin-top: 3px;
}

.w2-critical-mini-item i {
  color: #4ba64b;
}

.w2-badges {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 14px;
}

.w2-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 5px 9px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.72);
  color: #4b6459;
  font-size: 11px;
  font-weight: 700;
}

.w2-panel {
  padding: 22px;
}

.w2-panel-head {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  gap: 16px;
  flex-wrap: wrap;
  margin-bottom: 16px;
}

.w2-title {
  margin: 0;
  font-size: 22px;
  font-weight: 800;
  letter-spacing: -0.03em;
  color: #17372f;
}

.w2-note {
  font-size: 12px;
  color: #6f857a;
}

.w2-cards {
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
}

.w2-card {
  padding: 20px;
  position: relative;
  overflow: hidden;
}

.w2-card.tone-success {
  background: linear-gradient(180deg, #f1faf1 0%, #e8f5e8 100%);
  border-color: #cfe6cf;
}

.w2-card.tone-warning {
  background: linear-gradient(180deg, #fff8eb 0%, #fdf0d8 100%);
  border-color: #efdcb7;
}

.w2-card.tone-danger {
  background: linear-gradient(180deg, #fff2ef 0%, #fee7e1 100%);
  border-color: #efcfc6;
}

.w2-card-head {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: flex-start;
}

.w2-card-icon {
  width: 48px;
  height: 48px;
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.72);
  display: flex;
  align-items: center;
  justify-content: center;
  color: #4ba64b;
  font-size: 20px;
}

.w2-card-label {
  display: block;
  font-size: 11px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #657c72;
}

.w2-card-status {
  display: block;
  margin-top: 10px;
  font-size: 22px;
  line-height: 1.18;
  font-weight: 800;
  color: #17372f;
}

.w2-card-desc {
  display: block;
  margin-top: 8px;
  color: #60756d;
  font-size: 13px;
}

.w2-alerts {
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
}

.w2-alert {
  display: flex;
  gap: 14px;
  align-items: flex-start;
  padding: 18px;
}

.w2-alert-icon {
  width: 44px;
  height: 44px;
  border-radius: 14px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 18px;
  flex: 0 0 auto;
}

.w2-alert.alert-danger2 {
  background: #fff2ef;
  border-color: #efd0ca;
}

.w2-alert.alert-warning2 {
  background: #fff7eb;
  border-color: #efdfbf;
}

.w2-alert.alert-info2 {
  background: #eff8ef;
  border-color: #d5ead5;
}

.w2-alert.alert-danger2 .w2-alert-icon {
  background: #ffe1db;
  color: #c45b4c;
}

.w2-alert.alert-warning2 .w2-alert-icon {
  background: #ffedcc;
  color: #b67a12;
}

.w2-alert.alert-info2 .w2-alert-icon {
  background: #e4f3e4;
  color: #4ba64b;
}

.w2-alert strong {
  display: block;
  font-size: 15px;
  color: #17372f;
}

.w2-alert p {
  margin: 6px 0 0;
  font-size: 13px;
  color: #60756d;
}

.w2-summary {
  grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
}

.w2-summary-card {
  display: flex;
  gap: 14px;
  align-items: flex-start;
  padding: 18px;
  background: linear-gradient(180deg, #fff 0%, #f8fbf8 100%);
}

.w2-summary-icon {
  width: 50px;
  height: 50px;
  border-radius: 18px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 20px;
  flex: 0 0 auto;
  background: #eef7ee;
  color: #4ba64b;
}

.w2-summary-card strong {
  display: block;
  margin-top: 6px;
  font-size: 28px;
  line-height: 1;
  color: #17372f;
}

.w2-summary-card span {
  display: block;
  font-size: 11px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #6d8379;
}

.w2-summary-card small {
  display: block;
  margin-top: 8px;
  color: #71877d;
  font-size: 12px;
}

.w2-charts {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.w2-chart {
  padding: 18px;
}

.w2-chart h4 {
  margin: 0;
  color: #17372f;
  font-size: 18px;
  font-weight: 800;
}

.w2-chart p {
  margin: 8px 0 0;
  color: #6f857a;
  font-size: 12px;
}

.w2-chart #weather2-hourly-chart,
.w2-chart #weather2-daily-chart {
  min-height: 290px;
  margin-top: 12px;
}

.w2-chart-empty {
  display: none;
  margin-top: 12px;
  padding: 12px 14px;
  border-radius: 14px;
  background: #f3f6f4;
  color: #6f857c;
  font-size: 12px;
}

.w2-forecast-grid {
  grid-template-columns: 1fr;
  gap: 12px;
}

.w2-forecast-card {
  padding: 16px 18px;
  position: relative;
  overflow: hidden;
  display: grid;
  grid-template-columns: minmax(190px, 0.9fr) minmax(170px, 0.7fr) minmax(170px, 0.9fr) minmax(0, 1.7fr) auto;
  gap: 16px;
  align-items: center;
  min-height: 112px;
}

.w2-forecast-card:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 6px;
  background: #4ba64b;
}

.w2-theme-field {
  background: linear-gradient(180deg, #f7fbf5 0%, #fff 100%);
}

.w2-theme-rain {
  background: linear-gradient(180deg, #eef7fb 0%, #f8fcfe 100%);
}

.w2-theme-rain:before {
  background: #4f8fd1;
}

.w2-theme-cloud {
  background: linear-gradient(180deg, #f1f5f7 0%, #fbfcfc 100%);
}

.w2-theme-cloud:before {
  background: #8ca0ad;
}

.w2-theme-clear {
  background: linear-gradient(180deg, #fff8e8 0%, #fffdf7 100%);
}

.w2-theme-clear:before {
  background: #d9a228;
}

.w2-theme-snow {
  background: linear-gradient(180deg, #f2f8fc 0%, #fbfdff 100%);
}

.w2-theme-snow:before {
  background: #8fb9da;
}

.w2-theme-fog {
  background: linear-gradient(180deg, #f2f4f1 0%, #fafbf9 100%);
}

.w2-theme-fog:before {
  background: #98a28c;
}

.w2-forecast-main {
  display: flex;
  align-items: center;
  gap: 14px;
  min-width: 0;
}

.w2-forecast-icon {
  width: 56px;
  height: 56px;
  border-radius: 18px;
  background: #edf7ed;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #4ba64b;
  font-size: 25px;
  flex: 0 0 auto;
}

.w2-weather-symbol {
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 28px;
  line-height: 1;
}

.w2-weather-symbol .fa {
  font-size: inherit;
  line-height: 1;
}

.w2-weather-symbol.small {
  font-size: 16px;
}

.w2-theme-rain .w2-forecast-icon {
  background: #dceaf8;
  color: #4f8fd1;
}

.w2-theme-cloud .w2-forecast-icon {
  background: #e7edf1;
  color: #738895;
}

.w2-theme-clear .w2-forecast-icon {
  background: #fff0c8;
  color: #c89216;
}

.w2-theme-snow .w2-forecast-icon {
  background: #e7f1fa;
  color: #6f9bbd;
}

.w2-theme-fog .w2-forecast-icon {
  background: #ebeee7;
  color: #838d77;
}

.w2-forecast-dayname {
  font-size: 20px;
  font-weight: 800;
  color: #17372f;
}

.w2-forecast-date {
  margin-top: 4px;
  font-size: 12px;
  color: #6d8379;
}

.w2-forecast-text {
  margin-top: 4px;
  font-size: 13px;
  color: #60756d;
}

.w2-forecast-status {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  min-height: 46px;
}

.w2-forecast-condition {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 12px;
  border-radius: 999px;
  background: rgba(75, 166, 75, 0.09);
  font-size: 12px;
  font-weight: 700;
  color: #2f6030;
  flex: 0 0 auto;
}

.w2-theme-rain .w2-forecast-condition {
  background: rgba(79, 143, 209, 0.12);
  color: #376e9d;
}

.w2-theme-cloud .w2-forecast-condition {
  background: rgba(140, 160, 173, 0.14);
  color: #60798a;
}

.w2-theme-clear .w2-forecast-condition {
  background: rgba(217, 162, 40, 0.16);
  color: #9d6f06;
}

.w2-theme-snow .w2-forecast-condition {
  background: rgba(143, 185, 218, 0.16);
  color: #5884a7;
}

.w2-theme-fog .w2-forecast-condition {
  background: rgba(152, 162, 140, 0.16);
  color: #69715d;
}

.w2-warning-column {
  display: flex;
  align-items: center;
  min-height: 46px;
}

.w2-warning-badges {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  justify-content: flex-start;
  align-items: center;
}

.w2-warning-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 8px 10px;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 700;
  white-space: nowrap;
  flex: 0 0 auto;
}

.w2-warning-high {
  background: rgba(216, 76, 76, 0.12);
  color: #9f3131;
}

.w2-warning-medium {
  background: rgba(217, 162, 40, 0.16);
  color: #9d6f06;
}

.w2-warning-low {
  background: rgba(79, 166, 75, 0.12);
  color: #2f6030;
}

.w2-forecast-temp {
  display: flex;
  gap: 10px;
  align-items: baseline;
  justify-content: flex-end;
}

.w2-forecast-temp strong {
  font-size: 32px;
  line-height: 1;
  color: #17372f;
}

.w2-forecast-temp span {
  font-size: 18px;
  color: #6e857b;
  font-weight: 700;
}

.w2-forecast-meta {
  display: grid;
  grid-template-columns: repeat(5, minmax(110px, 1fr));
  gap: 10px;
  min-width: 0;
}

.w2-forecast-meta-collapse {
  min-width: 0;
}

.w2-forecast-meta-summary {
  display: none;
}

.w2-forecast-meta div {
  display: grid;
  gap: 4px;
  padding: 10px 12px;
  border-radius: 14px;
  background: rgba(255, 255, 255, 0.55);
  font-size: 12px;
  color: #60756d;
}

.w2-forecast-meta strong {
  color: #17372f;
}

.w2-empty {
  padding: 36px 18px;
  text-align: center;
  color: #6f857c;
}

.w2-hidden {
  display: none !important;
}

@media (max-width: 1299px) {
  .w2-focus,
  .w2-charts,
  .w2-forecast-card {
    grid-template-columns: 1fr;
  }

  .w2-forecast-temp {
    justify-content: flex-start;
  }

  .w2-forecast-meta {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 1199px) {
  .fd-hero {
    grid-template-columns: 1fr;
  }

  .dashboard-forecast-widget .dfw-days {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

@media (max-width: 991px) {
  #fd-dashboard-map {
    height: 420px;
  }

  .fd-hero__intro {
    flex-direction: column;
    align-items: flex-start;
  }

  .fd-hero__art {
    width: 100%;
    justify-content: flex-start;
  }

  .dashboard-forecast-widget .dfw-ops,
  .dashboard-forecast-widget .dfw-days {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 991px) {
  .fd-hero__main,
  .fd-hero__metrics,
  .fd-kpi,
  .fd-panel,
  .w2-focus-card,
  .w2-panel,
  .w2-card,
  .w2-summary-card,
  .w2-forecast-card,
  .w2-chart {
    border-radius: 20px;
  }

  .fd-hero__title {
    font-size: 30px;
  }

  .fd-kpi__value {
    font-size: 34px;
  }

  .fd-panel__head {
    display: block;
  }

  .fd-panel__link {
    margin-top: 10px;
  }

  #fd-dashboard-map {
    height: 320px;
  }

  .dashboard-forecast-widget .dfw-wrap {
    padding: 18px;
  }

  .dashboard-forecast-widget .dfw-top,
  .dashboard-forecast-widget .dfw-footer {
    flex-direction: column;
  }

  .dashboard-forecast-widget .dfw-ops,
  .dashboard-forecast-widget .dfw-days,
  .w2-cards,
  .w2-alerts,
  .w2-summary,
  .w2-charts,
  .w2-forecast-grid,
  .w2-forecast-meta {
    grid-template-columns: 1fr;
  }

  .w2-forecast-status,
  .w2-warning-column {
    min-height: auto;
  }

  .w2-forecast-meta-collapse {
    border-radius: 16px;
    background: rgba(255, 255, 255, 0.38);
    overflow: hidden;
  }

  .w2-forecast-meta-summary {
    list-style: none;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 0;
    padding: 10px 14px;
    cursor: pointer;
    color: #2f6030;
  }

  .w2-forecast-meta-summary::-webkit-details-marker {
    display: none;
  }

  .w2-forecast-meta-summary .fa {
    font-size: 12px;
    transition: transform 0.18s ease;
  }

  .w2-forecast-meta-collapse[open] .w2-forecast-meta-summary .fa {
    transform: rotate(180deg);
  }

  .w2-forecast-meta-collapse:not([open]) > .w2-forecast-meta {
    display: none;
  }

  .w2-forecast-meta-collapse[open] > .w2-forecast-meta {
    padding: 0 14px 14px;
  }
}

/* Plant phenology flow */
#content .plant-phenology-page,
#content .plant-pest-page,
#content .plant-disease-page,
#content .plant-persistence-page,
#content .plant-phenology-page *,
#content .plant-pest-page *,
#content .plant-disease-page *,
#content .plant-persistence-page * {
	box-sizing: border-box;
}

#content .plant-phenology-page,
#content .plant-pest-page,
#content .plant-disease-page,
#content .plant-persistence-page {
	--plant-color-primary: var(--primary, #4ba64b);
	--plant-color-secondary: var(--secondary, #91a295);
	--plant-color-success: var(--success, #2f7b32);
	--plant-color-warning: var(--warning, #d5962f);
	--plant-color-danger: var(--danger, #b8332f);
	--plant-color-info: var(--info, #60756d);
	--plant-color-text: #17372f;
	--plant-color-body: #304338;
	--plant-color-muted: #6e8575;
	--plant-color-subtle: #4f6857;
	--plant-color-border: #d8ead8;
	--plant-color-border-soft: #edf3eb;
	--plant-color-surface: #ffffff;
	--plant-color-surface-soft: #fbfdfb;
	--plant-color-surface-muted: #f8fbf7;
	--plant-color-primary-soft: #edf7ed;
	--plant-color-warning-soft: #fffaf1;
	--plant-color-warning-border: #efdcb7;
	--plant-color-warning-strong: #744500;
	--plant-color-warning-icon: #9b5d00;
	--plant-color-danger-soft: #fff7f6;
	--plant-color-danger-border: #f2c2bf;
	--plant-color-danger-strong: #9d2d29;
	--plant-color-on-accent: #ffffff;
	--plant-shadow-card: 0 16px 34px rgba(49, 88, 49, 0.07);
	--plant-shadow-active: 0 10px 18px rgba(49, 88, 49, 0.12);
	--plant-shadow-scale-active: inset 0 0 0 2px rgba(255, 255, 255, 0.72), var(--plant-shadow-active);
	--plant-persistence-class-0: var(--plant-color-secondary);
	--plant-persistence-class-1: var(--plant-color-success);
	--plant-persistence-class-2: var(--plant-color-primary);
	--plant-persistence-class-3: var(--plant-color-warning);
	--plant-persistence-class-4: var(--plant-color-danger);
	--plant-persistence-class-5: #7f1d1d;
	--plant-persistence-rain-color: var(--info, #3b82f6);
	--plant-persistence-transparent: rgba(255, 255, 255, 0);
}

#content .plant-phenology-shell,
#content .plant-pest-shell,
#content .plant-disease-shell,
#content .plant-persistence-shell,
#content .plant-phenology-pane,
#content .plant-pest-pane,
#content .plant-disease-pane,
#content .plant-persistence-pane {
	display: grid;
	gap: 18px;
	min-width: 0;
}

#content .plant-phenology-farm-selector,
#content .plant-phenology-flow,
#content .plant-phenology-technical,
#content .plant-phenology-empty,
#content .plant-pest-empty,
#content .plant-disease-empty,
#content .plant-persistence-empty {
	border: 1px solid #d8ead8;
	border-radius: 8px;
	background: #ffffff;
	box-shadow: 0 16px 34px rgba(49, 88, 49, 0.07);
	min-width: 0;
}

#content .plant-phenology-farm-selector,
#content .plant-phenology-flow,
#content .plant-phenology-technical {
	padding: 20px;
}

#content .plant-phenology-selector-head,
#content .plant-phenology-flow__head,
#content .plant-phenology-section-head {
	margin-bottom: 16px;
}

#content .plant-phenology-selector-head h2,
#content .plant-phenology-flow__head h2,
#content .plant-phenology-section-head h3 {
	margin: 0;
	font-size: 22px;
	line-height: 1.25;
	font-weight: 800;
	color: #17372f;
}

#content .plant-phenology-selector-head p,
#content .plant-phenology-flow__head p,
#content .plant-phenology-section-head p {
	margin: 6px 0 0;
	font-size: 13px;
	line-height: 1.45;
	color: #6f857a;
}

#content .plant-phenology-kicker {
	display: block;
	margin-bottom: 6px;
	font-size: 12px;
	font-weight: 800;
	line-height: 1.35;
	letter-spacing: 0;
	text-transform: uppercase;
	color: #6e8575;
}

#content .plant-phenology-tabs {
	display: flex;
	gap: 10px;
	margin: 0;
	padding: 0 0 4px;
	border: 0;
	overflow-x: auto;
}

#content .plant-phenology-tabs > li {
	float: none;
	margin: 0;
}

#content .plant-phenology-tabs > li > a.plant-phenology-tab {
	position: relative;
	min-width: 220px;
	margin: 0;
	padding: 13px 14px;
	border: 1px solid #d8ead8;
	border-radius: 8px;
	background: #ffffff;
	color: #31523a;
	display: grid;
	gap: 5px;
	overflow: hidden;
	text-decoration: none;
	transition: border-color 0.18s ease, box-shadow 0.18s ease, background-color 0.18s ease;
}

#content .plant-phenology-tabs > li.active > a.plant-phenology-tab,
#content .plant-phenology-tabs > li.active > a.plant-phenology-tab:hover,
#content .plant-phenology-tabs > li.active > a.plant-phenology-tab:focus {
	border-color: #4ba64b;
	background: #f5faf4;
	box-shadow: inset 0 0 0 2px rgba(75, 166, 75, 0.16);
	color: #17372f;
}

#content .plant-phenology-tabs > li.active > a.plant-phenology-tab::before {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	width: 4px;
	background: #4ba64b;
}

#content .plant-phenology-tab__title {
	font-size: 15px;
	font-weight: 800;
	line-height: 1.25;
	color: #17372f;
}

#content .plant-phenology-tab__meta,
#content .plant-phenology-tab__variety {
	font-size: 12px;
	line-height: 1.35;
	color: #6f857a;
}

#content .plant-phenology-tab__variety {
	font-weight: 700;
	color: #4f6857;
}

#content .plant-phenology-content {
	min-width: 0;
}

#content .plant-phenology-pane {
	display: none;
}

#content .plant-phenology-pane.active {
	display: grid;
}

#content .plant-phenology-flow__recommendation {
	display: grid;
	grid-template-columns: minmax(180px, 0.34fr) minmax(0, 1fr);
	gap: 14px;
	align-items: start;
	margin-top: 18px;
	padding: 16px;
	border: 1px solid #cfe6cf;
	border-left: 4px solid #4ba64b;
	border-radius: 8px;
	background: #f5faf4;
}

#content .plant-phenology-flow__recommendation.is-empty {
	border-color: #e2ece0;
	border-left-color: #b7c7bd;
	background: #f8fbf7;
}

#content .plant-phenology-flow__recommendation span {
	display: block;
	margin-bottom: 6px;
	font-size: 12px;
	font-weight: 800;
	line-height: 1.35;
	letter-spacing: 0;
	text-transform: uppercase;
	color: #4f6857;
}

#content .plant-phenology-flow__recommendation strong {
	display: block;
	font-size: 18px;
	line-height: 1.25;
	color: #17372f;
}

#content .plant-phenology-flow__recommendation p {
	margin: 0;
	font-size: 14px;
	line-height: 1.6;
	color: #304338;
}

#content .plant-phenology-track {
	display: flex;
	align-items: stretch;
	gap: 14px;
	min-width: 0;
	overflow-x: auto;
	padding: 2px 2px 14px;
}

#content .plant-phenology-step {
	position: relative;
	flex: 0 0 220px;
	display: grid;
	gap: 12px;
	align-content: start;
	padding: 15px;
	border: 1px solid #d8ead8;
	border-radius: 8px;
	background: #ffffff;
	opacity: 0.4;
	filter: grayscale(0.82);
}

#content .plant-phenology-step--completed {
	opacity: 0.58;
	filter: grayscale(0.62);
}

#content .plant-phenology-step--current {
	flex-basis: 300px;
	border-color: #4ba64b;
	background: #f7fcf6;
	box-shadow: inset 0 0 0 2px rgba(75, 166, 75, 0.24), 0 18px 34px rgba(49, 88, 49, 0.14);
	opacity: 1;
	filter: none;
}

#content .plant-phenology-step--next {
	flex-basis: 248px;
	border-color: #d9a441;
	background: #fffaf1;
	box-shadow: inset 0 0 0 2px rgba(217, 164, 65, 0.18);
	opacity: 0.96;
	filter: saturate(1);
}

#content .plant-phenology-step__status {
	width: 34px;
	height: 34px;
	border-radius: 8px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: #edf7ed;
	color: #4ba64b;
}

#content .plant-phenology-step--next .plant-phenology-step__status {
	background: #fff0d6;
	color: #9b5d00;
}

#content .plant-phenology-step--upcoming .plant-phenology-step__status,
#content .plant-phenology-step--unknown .plant-phenology-step__status {
	background: #eef3ef;
	color: #91a295;
}

#content .plant-phenology-step__image {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	aspect-ratio: 1 / 0.86;
	border-radius: 8px;
	background: #f8fbf7;
	overflow: hidden;
}

#content .plant-phenology-step__image img {
	display: block;
	max-width: 100%;
	max-height: 172px;
	object-fit: contain;
}

#content .plant-phenology-step__body {
	display: grid;
	gap: 5px;
}

#content .plant-phenology-step__body strong {
	font-size: 15px;
	line-height: 1.3;
	color: #17372f;
}

#content .plant-phenology-step--current .plant-phenology-step__body strong {
	font-size: 18px;
}

#content .plant-phenology-step--current .plant-phenology-step__image img {
	max-height: 210px;
}

#content .plant-phenology-step__body span {
	font-size: 12px;
	color: #6f857a;
}

#content .plant-phenology-step__label {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	justify-self: start;
	padding: 6px 9px;
	border-radius: 8px;
	background: #eef3ef;
	color: #60756d;
	font-size: 11px;
	font-weight: 800;
	line-height: 1;
	white-space: nowrap;
}

#content .plant-phenology-step--completed .plant-phenology-step__label,
#content .plant-phenology-step--current .plant-phenology-step__label {
	background: #edf7ed;
	color: #2f7b32;
}

#content .plant-phenology-step--next .plant-phenology-step__label {
	background: #fff0d6;
	color: #9b5d00;
}

#content .plant-phenology-step__countdown {
	display: inline-flex;
	align-items: center;
	justify-content: flex-start;
	gap: 7px;
	margin-top: 2px;
	padding: 9px 10px;
	border: 1px solid #efdcb7;
	border-radius: 8px;
	background: #fff4de;
	color: #744500;
	font-size: 12px;
	font-weight: 800;
	line-height: 1.25;
}

#content .plant-phenology-step__countdown i {
	flex: 0 0 auto;
}

#content .plant-phenology-step__countdown-copy {
	display: grid;
	gap: 2px;
	min-width: 0;
}

#content .plant-phenology-step__countdown small {
	display: block;
	font-size: 10px;
	font-weight: 800;
	line-height: 1.2;
	text-transform: uppercase;
	color: inherit;
	overflow-wrap: anywhere;
}

#content .plant-phenology-step__countdown strong {
	display: block;
	font-size: 13px;
	line-height: 1.25;
	color: #17372f;
	overflow-wrap: anywhere;
}

#content .plant-phenology-step__countdown--waiting {
	border-color: #d8ead8;
	background: #f8fbf7;
	color: #4f6857;
}

#content .plant-phenology-empty {
	display: grid;
	justify-items: center;
	gap: 8px;
	padding: 24px;
	text-align: center;
}

#content .plant-phenology-empty strong {
	font-size: 18px;
	color: #17372f;
}

#content .plant-phenology-empty span {
	color: #60756d;
}

#content .plant-phenology-technical__grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
	gap: 10px;
}

#content .plant-phenology-technical__grid > div {
	display: grid;
	gap: 6px;
	padding: 12px;
	border: 1px solid #edf3eb;
	border-radius: 8px;
	background: #f8fbf7;
}

#content .plant-phenology-technical__grid span {
	font-size: 12px;
	font-weight: 700;
	color: #6e8575;
}

#content .plant-phenology-technical__grid strong,
#content .plant-phenology-technical__grid a {
	font-size: 14px;
	font-weight: 800;
	color: #17372f;
}

#content .plant-phenology-technical__grid a {
	color: #4ba64b;
}

#content .plant-pest-content {
	display: grid;
	gap: 18px;
	min-width: 0;
}

#content .plant-pest-info {
	display: grid;
	grid-template-columns: 34px minmax(0, 1fr);
	gap: 10px;
	align-items: center;
	padding: 12px 14px;
	border: 1px solid var(--plant-color-border);
	border-radius: 8px;
	background: var(--plant-color-surface-muted);
	color: var(--plant-color-subtle);
	font-size: 13px;
	line-height: 1.45;
}

#content .plant-pest-info i {
	width: 34px;
	height: 34px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 8px;
	background: var(--plant-color-primary-soft);
	color: var(--plant-color-primary);
}

#content .plant-pest-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 16px;
	min-width: 0;
}

#content .plant-pest-card {
	position: relative;
	display: grid;
	align-content: start;
	gap: 14px;
	min-width: 0;
	padding: 18px;
	border: 1px solid var(--plant-color-border);
	border-left: 4px solid var(--plant-color-primary);
	border-radius: 8px;
	background: var(--plant-color-surface);
	box-shadow: var(--plant-shadow-card);
	--plant-pest-chart-primary: var(--plant-color-primary);
	--plant-pest-chart-status: var(--plant-color-primary);
}

#content .plant-pest-card--urgent {
	border-left-color: var(--plant-color-danger);
	--plant-pest-chart-status: var(--plant-color-danger);
}

#content .plant-pest-card--soon {
	border-left-color: var(--plant-color-warning);
	--plant-pest-chart-status: var(--plant-color-warning);
}

#content .plant-pest-card--waiting {
	border-left-color: var(--plant-color-secondary);
	--plant-pest-chart-status: var(--plant-color-secondary);
}

#content .plant-pest-card__head {
	display: grid;
	align-content: start;
	gap: 6px;
	min-height: 56px;
}

#content .plant-pest-card__head h2 {
	margin: 0;
	font-size: 20px;
	line-height: 1.25;
	font-weight: 800;
	color: var(--plant-color-text);
	overflow-wrap: anywhere;
}

#content .plant-pest-card__chart {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 260px;
	border: 1px solid var(--plant-color-border-soft);
	border-radius: 8px;
	background: var(--plant-color-surface-soft);
	overflow: hidden;
}

#content .plant-pest-chart {
	width: 100%;
	min-height: 250px;
}

#content .plant-pest-chart-center {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 42%;
	max-width: 118px;
	min-height: 54px;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 6px;
	transform: translate(-50%, -50%);
	pointer-events: none;
	text-align: center;
	z-index: 2;
}

#content .plant-pest-chart-center strong {
	display: block;
	max-width: 100%;
	font-size: 18px;
	line-height: 1.18;
	font-weight: 800;
	color: var(--plant-color-success);
	overflow-wrap: anywhere;
}

#content .plant-pest-chart-center--urgent strong {
	color: var(--plant-color-danger);
}

#content .plant-pest-chart-center--soon strong {
	color: var(--plant-color-warning-strong);
}

#content .plant-pest-chart-center--waiting strong {
	color: var(--plant-color-info);
}

#content .plant-pest-detail-list span {
	font-size: 12px;
	line-height: 1.35;
	font-weight: 800;
	letter-spacing: 0;
	text-transform: uppercase;
	color: var(--plant-color-muted);
}

#content .plant-pest-card__warning {
	padding: 10px 12px;
	border: 1px solid var(--plant-color-warning-border);
	border-radius: 8px;
	background: var(--plant-color-warning-soft);
	color: var(--plant-color-warning-strong);
	font-size: 13px;
	line-height: 1.45;
}

#content .plant-pest-card__warning summary {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	cursor: pointer;
	font-weight: 800;
	list-style: none;
}

#content .plant-pest-card__warning summary::-webkit-details-marker {
	display: none;
}

#content .plant-pest-card__warning summary i {
	flex: 0 0 auto;
	width: 24px;
	height: 24px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 8px;
	background: var(--plant-color-warning-soft);
	color: var(--plant-color-warning-icon);
	transition: transform 0.18s ease;
}

#content .plant-pest-card__warning[open] summary i {
	transform: rotate(180deg);
}

#content .plant-pest-card__warning p {
	margin: 8px 0 0;
	padding-top: 8px;
	border-top: 1px solid var(--plant-color-warning-border);
	font-size: 13px;
	line-height: 1.5;
	font-weight: 400;
	color: var(--plant-color-body);
	overflow-wrap: anywhere;
}

#content .plant-pest-card__details {
	display: grid;
	gap: 10px;
	min-width: 0;
	padding: 12px;
	border: 1px solid var(--plant-color-border);
	border-radius: 8px;
	background: var(--plant-color-surface-soft);
}

#content .plant-pest-card__details-head {
	font-size: 12px;
	line-height: 1.35;
	font-weight: 800;
	letter-spacing: 0;
	text-transform: uppercase;
	color: var(--plant-color-subtle);
}

#content .plant-pest-detail-list {
	display: grid;
	gap: 7px;
	margin-top: 0;
	padding-top: 0;
	border-top: 0;
}

#content .plant-pest-detail-list > div {
	display: grid;
	grid-template-columns: minmax(74px, 0.32fr) minmax(0, 1fr);
	gap: 8px;
	padding-bottom: 7px;
	border-bottom: 1px solid var(--plant-color-border-soft);
}

#content .plant-pest-detail-list > div:last-child {
	padding-bottom: 0;
	border-bottom: 0;
}

#content .plant-pest-detail-list span {
	font-size: 11px;
}

#content .plant-pest-detail-list p {
	margin: 0;
	font-size: 12px;
	line-height: 1.4;
	font-weight: 400;
	color: var(--plant-color-body);
	overflow-wrap: anywhere;
}

#content .plant-pest-card__actions {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 8px;
}

#content .plant-pest-card__action {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
	min-width: 0;
	min-height: 38px;
	padding: 9px 10px;
	border: 1px solid var(--plant-color-border);
	border-radius: 8px;
	background: var(--plant-color-surface-muted);
	font-size: 12px;
	line-height: 1.25;
	font-weight: 800;
	color: var(--plant-color-primary);
	text-decoration: none;
}

#content .plant-pest-card__action span {
	min-width: 0;
	overflow-wrap: anywhere;
}

#content .plant-pest-card__action i {
	flex: 0 0 auto;
}

#content .plant-pest-card__action:only-child {
	grid-column: 1 / -1;
}

#content .plant-pest-card__action:hover,
#content .plant-pest-card__action:focus {
	border-color: var(--plant-color-primary);
	background: var(--plant-color-primary-soft);
	color: var(--plant-color-success);
	text-decoration: none;
}

#content .plant-pest-empty {
	display: grid;
	justify-items: center;
	gap: 8px;
	padding: 26px;
	text-align: center;
	color: var(--plant-color-info);
}

#content .plant-pest-empty i {
	width: 48px;
	height: 48px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 8px;
	background: var(--plant-color-primary-soft);
	color: var(--plant-color-primary);
	font-size: 22px;
}

#content .plant-pest-empty strong {
	font-size: 18px;
	line-height: 1.3;
	color: var(--plant-color-text);
}

#content .plant-disease-content {
	display: grid;
	gap: 24px;
	min-width: 0;
}

#content .plant-disease-info {
	display: grid;
	grid-template-columns: 34px minmax(0, 1fr);
	gap: 10px;
	align-items: center;
	padding: 12px 14px;
	border: 1px solid var(--plant-color-border);
	border-radius: 8px;
	background: var(--plant-color-surface-muted);
	color: var(--plant-color-subtle);
	font-size: 13px;
	line-height: 1.45;
}

#content .plant-disease-info i {
	width: 34px;
	height: 34px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 8px;
	background: var(--plant-color-primary-soft);
	color: var(--plant-color-primary);
}

#content .plant-disease-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 20px;
	min-width: 0;
}

#content .plant-disease-card {
	position: relative;
	display: grid;
	align-content: start;
	gap: 22px;
	min-width: 0;
	padding: 18px;
	border: 1px solid var(--plant-color-border);
	border-left: 4px solid var(--disease-accent, var(--plant-color-primary));
	border-radius: 8px;
	background: var(--plant-color-surface);
	box-shadow: var(--plant-shadow-card);
}

#content .plant-disease-card__head {
	display: grid;
	align-content: start;
	gap: 6px;
	min-height: 56px;
}

#content .plant-disease-card__head h2 {
	margin: 0;
	font-size: 20px;
	line-height: 1.25;
	font-weight: 800;
	color: var(--plant-color-text);
	overflow-wrap: anywhere;
}

#content .plant-disease-scale {
	display: grid;
	grid-template-rows: 18px 48px;
	gap: 10px;
	min-height: 76px;
	min-width: 0;
}

#content .plant-disease-scale__title {
	display: block;
	min-width: 0;
	font-size: 12px;
	line-height: 1.35;
	font-weight: 800;
	letter-spacing: 0;
	text-transform: uppercase;
	color: var(--plant-color-muted);
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

#content .plant-disease-detail-list span {
	font-size: 12px;
	line-height: 1.35;
	font-weight: 800;
	letter-spacing: 0;
	text-transform: uppercase;
	color: var(--plant-color-muted);
}

#content .plant-disease-scale__track {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 4px;
	height: 48px;
	min-width: 0;
}

#content .plant-disease-scale__segment {
	position: relative;
	min-width: 0;
	height: 48px;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 6px;
	border-radius: 8px;
	background: var(--disease-color);
	opacity: 0.28;
	filter: grayscale(0.48);
	color: var(--plant-color-on-accent);
	text-align: center;
}

#content .plant-disease-scale__segment.is-active {
	opacity: 1;
	filter: none;
	box-shadow: var(--plant-shadow-scale-active);
}

#content .plant-disease-scale__segment span {
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	max-height: 24px;
	font-size: 10px;
	line-height: 1.2;
	font-weight: 800;
	text-shadow: 0 1px 2px rgba(0, 0, 0, 0.28);
	overflow-wrap: anywhere;
	overflow: hidden;
}

#content .plant-disease-card__waiting {
	display: grid;
	grid-template-columns: 30px minmax(0, 1fr);
	gap: 10px;
	align-items: center;
	padding: 12px;
	border: 1px solid var(--plant-color-border);
	border-radius: 8px;
	background: var(--plant-color-surface-muted);
	color: var(--plant-color-subtle);
	font-size: 13px;
	line-height: 1.45;
}

#content .plant-disease-card__waiting i {
	width: 30px;
	height: 30px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 8px;
	background: var(--plant-color-primary-soft);
	color: var(--plant-color-primary);
}

#content .plant-disease-card__comment {
	display: grid;
	align-content: start;
	gap: 10px;
	padding: 12px 14px;
	border: 1px solid var(--disease-accent, var(--plant-color-warning-border));
	border-radius: 8px;
	background: var(--plant-color-warning-soft);
	background: color-mix(in srgb, var(--disease-accent, var(--plant-color-warning)) 12%, var(--plant-color-surface));
	color: var(--plant-color-text);
	font-size: 13px;
	line-height: 1.45;
}

#content .plant-disease-card__comment--placeholder {
	visibility: hidden;
	pointer-events: none;
}

#content .plant-disease-card__comment strong {
	font-size: 12px;
	line-height: 1.35;
	font-weight: 800;
	letter-spacing: 0;
	text-transform: uppercase;
	color: var(--plant-color-text);
}

#content .plant-disease-card__comment div {
	display: grid;
	gap: 10px;
}

#content .plant-disease-card__comment p {
	margin: 0;
	font-size: 13px;
	line-height: 1.5;
	font-weight: 400;
	color: var(--plant-color-body);
	overflow-wrap: anywhere;
}

#content .plant-disease-card__details {
	display: grid;
	grid-template-rows: auto minmax(0, 1fr) auto;
	gap: 10px;
	min-width: 0;
	padding: 14px;
	border: 1px solid var(--plant-color-border);
	border-radius: 8px;
	background: var(--plant-color-surface-soft);
}

#content .plant-disease-card__details-head {
	font-size: 12px;
	line-height: 1.35;
	font-weight: 800;
	letter-spacing: 0;
	text-transform: uppercase;
	color: var(--plant-color-subtle);
}

#content .plant-disease-detail-list {
	display: grid;
	gap: 7px;
	margin-top: 0;
	padding-top: 0;
	border-top: 0;
}

#content .plant-disease-detail-list > div {
	display: grid;
	grid-template-columns: minmax(74px, 0.32fr) minmax(0, 1fr);
	gap: 8px;
	padding-bottom: 7px;
	border-bottom: 1px solid var(--plant-color-border-soft);
}

#content .plant-disease-detail-list > div:last-child {
	padding-bottom: 0;
	border-bottom: 0;
}

#content .plant-disease-detail-list span {
	font-size: 11px;
}

#content .plant-disease-detail-list p {
	margin: 0;
	font-size: 12px;
	line-height: 1.4;
	font-weight: 400;
	color: var(--plant-color-body);
	overflow-wrap: anywhere;
}

#content .plant-disease-card__actions {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 8px;
}

#content .plant-disease-card__action {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
	min-width: 0;
	min-height: 38px;
	padding: 9px 10px;
	border: 1px solid var(--plant-color-border);
	border-radius: 8px;
	background: var(--plant-color-surface-muted);
	font-size: 12px;
	line-height: 1.25;
	font-weight: 800;
	color: var(--plant-color-primary);
	text-decoration: none;
}

#content .plant-disease-card__action span {
	min-width: 0;
	overflow-wrap: anywhere;
}

#content .plant-disease-card__action i {
	flex: 0 0 auto;
}

#content .plant-disease-card__action:only-child {
	grid-column: 1 / -1;
}

#content .plant-disease-card__action:hover,
#content .plant-disease-card__action:focus {
	border-color: var(--plant-color-primary);
	background: var(--plant-color-primary-soft);
	color: var(--plant-color-success);
	text-decoration: none;
}

#content .plant-disease-empty {
	display: grid;
	justify-items: center;
	gap: 8px;
	padding: 26px;
	text-align: center;
	color: var(--plant-color-info);
}

#content .plant-disease-empty i {
	width: 48px;
	height: 48px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 8px;
	background: var(--plant-color-primary-soft);
	color: var(--plant-color-primary);
	font-size: 22px;
}

#content .plant-disease-empty strong {
	font-size: 18px;
	line-height: 1.3;
	color: var(--plant-color-text);
}

#content .plant-persistence-content {
	display: grid;
	gap: 18px;
	min-width: 0;
}

#content .plant-persistence-info {
	display: grid;
	grid-template-columns: 34px minmax(0, 1fr);
	gap: 10px;
	align-items: center;
	padding: 12px 14px;
	border: 1px solid var(--plant-color-border);
	border-radius: 8px;
	background: var(--plant-color-surface-muted);
	color: var(--plant-color-subtle);
	font-size: 13px;
	line-height: 1.45;
}

#content .plant-persistence-info i {
	width: 34px;
	height: 34px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 8px;
	background: var(--plant-color-primary-soft);
	color: var(--plant-color-primary);
}

#content .plant-persistence-list {
	display: grid;
	gap: 18px;
	min-width: 0;
}

#content .plant-persistence-card {
	display: grid;
	gap: 18px;
	min-width: 0;
	padding: 18px;
	border: 1px solid var(--plant-color-border);
	border-radius: 8px;
	background: var(--plant-color-surface);
	box-shadow: var(--plant-shadow-card);
}

#content .plant-persistence-card__head {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 12px;
	align-items: start;
	min-width: 0;
}

#content .plant-persistence-card__head span,
#content .plant-persistence-card__date span,
#content .plant-persistence-aktif__head span,
#content .plant-persistence-chart-card__head strong,
#content .plant-persistence-metrics__head {
	display: block;
	margin-bottom: 6px;
	font-size: 12px;
	line-height: 1.35;
	font-weight: 800;
	letter-spacing: 0;
	text-transform: uppercase;
	color: var(--plant-color-muted);
}

#content .plant-persistence-card__head h2 {
	margin: 0;
	font-size: 22px;
	line-height: 1.25;
	font-weight: 800;
	color: var(--plant-color-text);
	overflow-wrap: anywhere;
}

#content .plant-persistence-card__date {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 8px;
	flex-wrap: nowrap;
	min-width: 150px;
	text-align: right;
}

#content .plant-persistence-card__date span {
	margin-bottom: 0;
	white-space: nowrap;
}

#content .plant-persistence-card__date strong {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 34px;
	padding: 8px 10px;
	border: 1px solid var(--plant-color-border);
	border-radius: 8px;
	background: var(--plant-color-surface-muted);
	color: var(--plant-color-subtle);
	font-size: 12px;
	line-height: 1.2;
	font-weight: 800;
	white-space: nowrap;
}

#content .plant-persistence-aktif-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 16px;
	min-width: 0;
}

#content .plant-persistence-aktif {
	--plant-persistence-status-color: var(--plant-persistence-class-0);
	display: grid;
	align-content: start;
	gap: 14px;
	min-width: 0;
	padding: 16px;
	border: 1px solid var(--plant-color-border);
	border-left: 4px solid var(--plant-persistence-status-color);
	border-radius: 8px;
	background: var(--plant-color-surface-soft);
}

#content .plant-persistence-aktif--class-1 {
	--plant-persistence-status-color: var(--plant-persistence-class-1);
}

#content .plant-persistence-aktif--class-2 {
	--plant-persistence-status-color: var(--plant-persistence-class-2);
}

#content .plant-persistence-aktif--class-3 {
	--plant-persistence-status-color: var(--plant-persistence-class-3);
}

#content .plant-persistence-aktif--class-4 {
	--plant-persistence-status-color: var(--plant-persistence-class-4);
}

#content .plant-persistence-aktif--class-5 {
	--plant-persistence-status-color: var(--plant-persistence-class-5);
}

#content .plant-persistence-aktif__head {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 12px;
	align-items: start;
	min-width: 0;
}

#content .plant-persistence-aktif__head h3 {
	margin: 0;
	font-size: 20px;
	line-height: 1.25;
	font-weight: 800;
	color: var(--plant-color-text);
	overflow-wrap: anywhere;
}

#content .plant-persistence-aktif__head > strong {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 34px;
	max-width: 160px;
	padding: 8px 10px;
	border: 1px solid color-mix(in srgb, var(--plant-persistence-status-color) 35%, var(--plant-color-border));
	border-radius: 8px;
	background: color-mix(in srgb, var(--plant-persistence-status-color) 12%, var(--plant-color-surface));
	color: var(--plant-color-text);
	font-size: 12px;
	line-height: 1.2;
	font-weight: 800;
	text-align: center;
	overflow-wrap: anywhere;
}

#content .plant-persistence-chart-card {
	display: grid;
	gap: 12px;
	min-width: 0;
	padding: 14px;
	border: 1px solid var(--plant-color-border);
	border-radius: 8px;
	background: var(--plant-color-surface);
}

#content .plant-persistence-chart-card__head {
	display: grid;
	min-width: 0;
}

#content .plant-persistence-chart-card__head strong {
	margin-bottom: 0;
	color: var(--plant-color-text);
}

#content .plant-persistence-chart {
	width: 100%;
	min-height: 320px;
	min-width: 0;
}

#content .plant-persistence-chart-empty {
	display: grid;
	place-items: center;
	gap: 10px;
	min-height: 320px;
	padding: 20px;
	border: 1px dashed var(--plant-color-border);
	border-radius: 8px;
	background: var(--plant-color-surface-muted);
	color: var(--plant-color-info);
	text-align: center;
}

#content .plant-persistence-chart-empty i {
	width: 42px;
	height: 42px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 8px;
	background: var(--plant-color-primary-soft);
	color: var(--plant-color-primary);
	font-size: 20px;
}

#content .plant-persistence-chart-empty strong {
	font-size: 14px;
	line-height: 1.4;
	font-weight: 800;
	color: var(--plant-color-text);
}

#content .plant-persistence-metrics {
	display: grid;
	gap: 10px;
	min-width: 0;
	padding: 14px;
	border: 1px solid var(--plant-color-border);
	border-radius: 8px;
	background: var(--plant-color-surface);
}

#content .plant-persistence-metrics__grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(135px, 1fr));
	gap: 8px;
	min-width: 0;
}

#content .plant-persistence-metrics__grid > div {
	display: grid;
	gap: 5px;
	min-width: 0;
	padding: 10px;
	border: 1px solid var(--plant-color-border-soft);
	border-radius: 8px;
	background: var(--plant-color-surface-muted);
}

#content .plant-persistence-metrics__grid span {
	font-size: 11px;
	line-height: 1.3;
	font-weight: 800;
	text-transform: uppercase;
	color: var(--plant-color-muted);
	overflow-wrap: anywhere;
}

#content .plant-persistence-metrics__grid strong {
	font-size: 13px;
	line-height: 1.35;
	font-weight: 700;
	color: var(--plant-color-body);
	overflow-wrap: anywhere;
}

#content .plant-persistence-empty {
	display: grid;
	justify-items: center;
	gap: 8px;
	padding: 26px;
	text-align: center;
	color: var(--plant-color-info);
}

#content .plant-persistence-empty--compact {
	padding: 18px;
	box-shadow: none;
}

#content .plant-persistence-empty i {
	width: 48px;
	height: 48px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 8px;
	background: var(--plant-color-primary-soft);
	color: var(--plant-color-primary);
	font-size: 22px;
}

#content .plant-persistence-empty strong {
	font-size: 18px;
	line-height: 1.3;
	color: var(--plant-color-text);
}

#content .plant-persistence-empty span {
	max-width: 620px;
	font-size: 13px;
	line-height: 1.5;
	color: var(--plant-color-subtle);
}

@media (max-width: 991px) {
	#content .plant-phenology-flow__recommendation {
		grid-template-columns: 1fr;
	}

	#content .plant-pest-grid,
	#content .plant-disease-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	#content .plant-persistence-aktif-grid {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 640px) {
	#content .plant-phenology-farm-selector,
	#content .plant-phenology-flow,
	#content .plant-phenology-technical {
		padding: 16px;
	}

	#content .plant-phenology-tabs > li > a.plant-phenology-tab {
		min-width: 210px;
	}

	#content .plant-phenology-step {
		flex-basis: 186px;
	}

	#content .plant-phenology-step--current {
		flex-basis: 236px;
	}

	#content .plant-phenology-step--next {
		flex-basis: 212px;
	}

	#content .plant-pest-grid,
	#content .plant-disease-grid,
	#content .plant-persistence-aktif-grid {
		grid-template-columns: 1fr;
	}

	#content .plant-pest-card,
	#content .plant-persistence-card,
	#content .plant-persistence-aktif {
		padding: 16px;
	}

	#content .plant-pest-card__chart {
		min-height: 230px;
	}

	#content .plant-persistence-card__head,
	#content .plant-persistence-aktif__head {
		grid-template-columns: 1fr;
	}

	#content .plant-persistence-card__date,
	#content .plant-persistence-aktif__head > strong {
		justify-self: start;
		text-align: left;
	}

	#content .plant-persistence-card__date {
		justify-content: flex-start;
		min-width: 0;
	}

	#content .plant-persistence-card__date strong,
	#content .plant-persistence-aktif__head > strong {
		white-space: nowrap;
	}

	#content .plant-persistence-chart,
	#content .plant-persistence-chart-empty {
		min-height: 280px;
	}

	#content .plant-disease-card {
		padding: 16px;
	}

	#content .plant-pest-card__actions,
	#content .plant-disease-card__actions {
		grid-template-columns: 1fr;
	}
}
