:root {
	--bizg-green-bg: #E2E7E5;
	--bizg-green-bg-rgb: 226, 231, 229;
	--bizg-green-100: #d1e7dd;
	--bizg-green-100-rgb: 209, 231, 221;
	--bizg-green-200: #a3cfbb;
	--bizg-green-200-rgb: 163, 207, 187;
	--bizg-green-300: #75b798;
	--bizg-green-300-rgb: 117, 183, 152;
	--bizg-green-400: #479f76;
	--bizg-green-400-rgb: 71, 159, 118;
	--bizg-green-500: #198754;
	--bizg-green-500-rgb: 25, 135, 84;
	--bizg-green-600: #146c43;
	--bizg-green-600-rgb: 20, 108, 67;
	--bizg-green-700: #0f5132;
	--bizg-green-700-rgb: 15, 81, 50;
	--bizg-green-800: #0a3622;
	--bizg-green-800-rgb: 10, 54, 34;
	--bizg-green-900: #051b11;
	--bizg-green-900-rgb: 5, 27, 17;
	--bizg-blue-100: #cfe2ff;
	--bizg-blue-200: #9ec5fe;
	--bizg-blue-300: #6ea8fe;
	--bizg-blue-400: #3d8bfd;
	--bizg-blue-500: #0d6efd;
	--bizg-blue-600: #0a58ca;
	--bizg-blue-700: #084298;
	--bizg-blue-800: #052c65;
	--bizg-blue-900: #031633;
	--bizg-yellow-100: #fff3cd;
	--bizg-yellow-200: #ffe69c;
	--bizg-yellow-300: #ffda6a;
	--bizg-yellow-400: #ffcd39;
	--bizg-yellow-500: #ffc107;
	--bizg-yellow-600: #cc9a06;
	--bizg-yellow-700: #997404;
	--bizg-yellow-800: #664d03;
	--bizg-yellow-900: #332701;
	--bizg-red-100: #f8d7da;
	--bizg-red-200: #f1aeb5;
	--bizg-red-300: #ea868f;
	--bizg-red-400: #e35d6a;
	--bizg-red-500: #dc3545;
	--bizg-red-600: #b02a37;
	--bizg-red-700: #842029;
	--bizg-red-800: #58151c;
	--bizg-red-900: #2c0b0e;
	--bizg-gray-100: #f8f9fa;
	--bizg-gray-200: #e9ecef;
	--bizg-gray-300: #dee2e6;
	--bizg-gray-400: #ced4da;
	--bizg-gray-500: #adb5bd;
	--bizg-gray-600: #6c757d;
	--bizg-gray-700: #495057;
	--bizg-gray-800: #343a40;
	--bizg-gray-900: #212529;
	--bizg-white: #ffffff;
	--bizg-white-rgb: 255, 255, 255;
	--bizg-black: #000000;
	--bizg-black-rgb: 0, 0, 0;
}

.fs-7 {
	font-size: .9rem !important;
}

.fs-8 {
	font-size: .8rem !important;
}

.fs-9 {
	font-size: .7rem !important;
}

.fs-10 {
	font-size: .6rem !important;
}

.h-90 {
	height: 90% !important;
}

.h-95 {
	height: 95% !important;
}

body {
	font-size: 16px;
}

footer {
	text-align: center;
	font-size: 12px;
}

footer * {
	color: inherit !important;
}

header .navbar {
	padding: 0 .5rem !important;
}

header * {
	color: inherit !important;
}

header [data-bs-toggle=offcanvas] {
	font-size: 1.5rem;
	padding: .25rem;
	line-height: 1;
}

main {
	display: contents;
}

main>* {
	margin-bottom: 1rem;
}

table {
	--bs-border-width: 0 !important;
}

th,
td {
	white-space: nowrap;
}

fieldset {
	padding: .5rem !important;
	border: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important;
	border-radius: var(--bs-border-radius-lg) !important;
}

legend {
	padding: 0 .5rem !important;
	width: auto !important;
	float: none !important;
	font-weight: bold;
}

#contents {
	padding-bottom: 10rem;
}

#sidebar {
	padding: 2rem 0 10rem;
}

#sidebar .nav .btn {
	width: -webkit-fill-available;
	width: -moz-available;
	border-radius: .25rem;
	margin: 0 .25rem;
}

#sidebar .nav-item .bi:before {
	margin-right: .5rem;
}

@media (min-width: 992px) {
	#sidebar {
		padding-top: 3rem;
		overflow-y: auto;
		height: 100vh !important;
	}

	#contents {
		padding-top: 3rem;
	}

	#breadcrumb {
		top: 3rem;
	}
}

@media (max-width: 992px) {
	#sidebar {
		max-width: 70%;
		overflow-y: auto;
	}

	#sidebar [data-bs-toggle=offcanvas] {
		position: fixed;
		left: .25rem;
		top: .25rem;
		font-size: 1.25rem;
		padding: 0 .25rem;
	}

	#breadcrumb {
		padding-top: 3rem;
	}
}

.breadcrumb {
	--bs-breadcrumb-padding-x: .75rem !important;
	--bs-breadcrumb-padding-y: .5rem !important;
	--bs-breadcrumb-border-radius: .5rem !important;
}

[data-bizg-role=resultmeta] {
	display: block;
	text-align: right;
}

[data-bizg-role=listtable] {
	margin: 0 !important;
}

[data-bizg-role=listtable] tr>* {
	padding: .1rem .5rem !important;
}

[data-bizg-role=listtable] .btn {
	padding: .25rem .5rem;
	border: none;
	font-size: .8em;
}

a {
	text-decoration: none !important;
}

.nav-link {
	--bs-nav-link-padding-y: .5rem !important;
	--bs-nav-link-padding-x: .5rem !important;
	border-radius: .25rem;
	margin: 0 .25rem;
}

.accordion-button {
	--bs-accordion-btn-padding-y: .5rem !important;
	--bs-accordion-btn-padding-x: .75rem !important;
}

.accordion-button[data-bs-toggle=collapse] {
	cursor: pointer;
}

.accordion-body {
	--bs-accordion-body-padding-y: 1rem !important;
	--bs-accordion-body-padding-x: .75rem !important;
}

/**
 * Modal / Toast / Spiner
 */
.modal {
	--bs-modal-header-padding-y: 1rem;
	--bs-modal-header-padding-x: 1rem;
	--bs-modal-header-padding: .5rem 1rem;
	--bs-modal-footer-gap: .5rem;
}

[data-bs-dismiss] {
	background-color: white;
	border-radius: .5em;
	opacity: 1 !important;
}

[data-bizg-role=modal] [data-bizg-role=title] {
	font-size: 1.5rem;
}

[data-bizg-role=icon] {
	margin-right: .5rem;
	padding: .25rem .5rem;
	border-radius: .25rem;
}

[data-bizg-role=toast] [data-bizg-role=icon] {
	padding: .25rem .5rem;
	border-radius: .25rem;
}

[data-bizg-role=toast] [data-bizg-role=title] {
	font-size: 1rem;
	margin: 0 auto 0 0;
}

[data-bizg-role=toast] [data-bs-dismiss=toast] {
	margin: 0 !important;
	cursor: pointer;
}

[data-bizg-role=toast-canvas] {
	position: fixed !important;
	bottom: 0;
	right: 0;
	margin: 0 .25rem 1.5rem;
}

[data-bizg-role=spinner] {
	background-color: rgba(var(--bizg-black-rgb), .8) !important;
	display: flex;
	align-items: center !important;
	justify-content: center !important;
	height: 100vh !important;
	width: 100vw !important;
	position: fixed !important;
	z-index: 9999;
	top: 0;
	left: 0;
}

[data-bizg-role=spinner] .spinner {
	--bs-spinner-height: 15rem;
	--bs-spinner-width: 15rem;
	--bs-spinner-border-width: 3rem;
	border-top-color: transparent !important;
}

/**
  * Color
  */
:root {
	--bs-body-color: var(--bizg-gray-900) !important;
	--bs-body-bg: var(--bizg-white) !important;
	--bs-border-color: var(--bizg-gray-300) !important;
}

a {
	--bs-link-color-rgb: var(--bizg-green-900-rgb);
}

a:hover {
	--bs-link-hover-color-rgb: var(--bizg-green-600-rgb);
}

a.active {
	--bs-link-color-rgb: var(--bizg-green-800-rgb);
}

*:focus {
	--bs-btn-close-focus-shadow: none !important;
	box-shadow: none;
}

*:focus-visible {
	box-shadow: 0 0 0 0.2rem var(--bizg-green-100) !important;
}

header,
footer {
	color: var(--bizg-white);
	background-color: var(--bizg-green-800);
}

[data-bs-toggle=offcanvas] {
	color: var(--bizg-green-900) !important;
	background-color: var(--bizg-white) !important;
}

[data-bizg-role=spinner] .spinner {
	border-color: var(--bizg-yellow-100);
}

.breadcrumb {
	--bs-breadcrumb-bg: var(--bizg-gray-400) !important;
}

.nav-link {
	--bs-nav-link-color: var(--bizg-gray-900);
	--bs-nav-link-hover-color: var(--bizg-green-700);
	--bs-nav-link-hover-bgcolor: var(--bizg-green-100);
	--bs-nav-link-active-color: var(--bizg-green-900);
	--bs-nav-link-active-bgcolor: var(--bizg-green-200);
}

.nav-link:hover {
	background-color: var(--bs-nav-link-hover-bgcolor);
}

.nav-link.active {
	color: var(--bs-nav-link-active-color) !important;
	background-color: var(--bs-nav-link-active-bgcolor);
}

.pagination {
	--bs-pagination-color: var(--bizg-gray-900) !important;
	--bs-pagination-bg: var(--bizg-white) !important;
	--bs-pagination-border-color: var(--bizg-green-100) !important;
	--bs-pagination-hover-color: var(--bizg-green-900) !important;
	--bs-pagination-hover-bg: var(--bizg-green-100) !important;
	--bs-pagination-hover-border-color: var(--bizg-green-100) !important;
	--bs-pagination-focus-color: var(--bizg-gray-900) !important;
	--bs-pagination-focus-bg: var(--bizg-white) !important;
	--bs-pagination-focus-box-shadow: 0 0 0 0.2rem var(--bizg-green-200) !important;
	--bs-pagination-active-color: var(--bizg-white) !important;
	--bs-pagination-active-bg: var(--bizg-green-300) !important;
	--bs-pagination-active-border-color: var(--bizg-green-100) !important;
}

.btn {
	--bs-btn-color: var(--bizg-white) !important;
	--bs-btn-bg: var(--bizg-green-600) !important;
	--bs-btn-hover-color: var(--bizg-green-900) !important;
	--bs-btn-hover-bg: var(--bizg-green-200) !important;
	--bs-btn-active-border-color: var(--bizg-green-300) !important;
}

.btn:active {
	background-color: var(--bs-btn-active-border-color) !important;
}

.accrodion {
	--bs-accordion-color: var(--bizg-green-800) !important;
	--bs-accordion-bg: var(--bizg-green-bg) !important;
}

.accordion-button {
	--bs-accordion-btn-color: var(--bizg-green-800) !important;
	--bs-accordion-btn-bg: var(--bizg-gray-200) !important;
	--bs-accordion-btn-focus-box-shadow: none !important;
	--bs-accordion-active-color: var(--bizg-green-800) !important;
	--bs-accordion-active-bg: var(--bizg-green-100) !important;
}

table {
	--bs-table-striped-bg: var(--bizg-gray-200) !important;
	--bs-table-active-bg: var(--bizg-gray-300) !important;
	--bs-table-hover-bg: var(--bizg-green-100) !important;
}

thead,
tfoot {
	--bs-table-color: var(--bizg-white);
	--bs-table-bg: var(--bizg-green-900);
}

.modal {
	--bs-modal-footer-bg: var(--bizg-green-bg);
}

.modal-header {
	background-color: var(--bizg-green-bg);
}

.toast {
	--bs-toast-border-color: var(--bizg-gray-200) !important;
}