/**
 * Technetium PHP Framework
 * @version 3.0
 * @author Tony Leung <tony.leung@cruzium.com>
 * @copyright Copyright (c) 2023 Cruzium Digital
 * @license https://opensource.org/license/gpl-3-0/ GPL-3.0-only
 *
 * This stylesheet contains style overrides of plugins.
 */

@charset "utf-8";

/* alpine.js */
[x-cloak] {
	display: none !important;
}


/* bootstrap > css variables */
:root {
	--bs-primary: #01886d;
	--bs-primary-rgb: 1, 136, 109;
	--bs-primary-hover: #01725b;
	--bs-primary-hover-rgb: 1, 114, 91;
	--bs-primary-active: #01725b;
	--bs-primary-active-rgb: 1, 114, 91;
	--bs-danger: #ea5504;
	--bs-danger-rgb: 234, 85, 4;
	--bs-dark: #333333;
	--bs-dark-rgb: 51, 51, 51;
	--bs-light: #e5e5e5;
	--bs-light-rgb: 229, 229, 229;
	--bs-secondary-color: #a5a5a5;
	--bs-secondary-color-rgb: 165, 165, 165;
	--bs-border-radius: 0;
	--bs-border-radius-sm: 0;
	--bs-border-radius-lg: 0;
	--bs-font-sans-serif: 'Clarimo UD PE', Arial, "Noto Sans TC", "微軟正黑體", "Microsoft JhengHei", Helvetica, sans-serif;
	--bs-body-color: var(--bs-dark);
}


/* bootstrap > content > reboot */
.xsmall {
	font-size: 0.75rem;
}


/* bootstrap > content > typography */
h1, .h1,
h2, .h2,
h3, .h3,
h4, .h4,
h5, .h5,
h6, .h6 {
	margin-bottom: var(--bs-spacer-3);
	font-weight: 700;
	color: var(--bs-primary);
}
h1:not(:first-child), .h1:not(:first-child),
h1:not(:first-child), .h2:not(:first-child),
h1:not(:first-child), .h3:not(:first-child),
h1:not(:first-child), .h4:not(:first-child),
h1:not(:first-child), .h5:not(:first-child),
h1:not(:first-child), .h6:not(:first-child) {
	margin-top: var(--bs-spacer-4);
}


/* bootstrap > content > table */
.table > :not(caption) > tr > th {
	color: var(--bs-primary);
}
.table th.action,
.table td.action {
	width: 1%;
	white-space: nowrap;
}
.table th.action .input-group,
.table td.action .input-group {
	flex-wrap: nowrap;
}
.table th.amount,
.table td.amount {
	width: 1%;
	text-align: center;
	white-space: nowrap;
}


/* bootstrap > forms > form control */
.form-control {
	--bs-form-control-padding-x: 0.75rem;
	--bs-form-control-padding-y: 0.75rem;
}
.form-control:focus {
	box-shadow: none;
	outline: var(--aria-outline);
	border-color: var(--bs-primary);
}
.form-control:disabled {
	--bs-form-control-disabled-bg: var(--bs-light);
}
.form-control.has-error {
	--bs-border-color: var(--bs-danger);
}
.form-control.loading {
	background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" preserveAspectRatio="xMidYMid" style="shape-rendering: auto; display: block; background: transparent;" width="50" height="50" xmlns:xlink="http://www.w3.org/1999/xlink"><g><circle stroke-dasharray="94.24777960769379 33.41592653589793" r="20" stroke-width="6" stroke="%23b0b1b0" fill="none" cy="50" cx="50"><animateTransform keyTimes="0;1" values="0 50 50;360 50 50" dur="1s" repeatCount="indefinite" type="rotate" attributeName="transform"></animateTransform></circle></g></svg>');
	background-position: right;
	background-repeat: no-repeat;
	background-size: auto 100%;
}
.form-label,
.col-form-label {
	font-weight: bold;
	color: var(--bs-primary);
}
.col-form-label {
	padding-top: calc(0.75rem + var(--bs-border-width));
	padding-bottom: calc(0.75rem + var(--bs-border-width));
}
.form-label > .required:before,
.col-form-label > .required:before {
	content: '*';
	margin-left: 0.25rem;
}
.form-text {
	font-weight: normal;
	color: var(--bs-secondary-color)
}
.form-text li {
	margin-bottom: 0;
}
.input-error {
	margin-top: var(--bs-spacer-1);
	color: var(--bs-danger);
}


/* bootstrap > forms > checks & radios */
.form-check-input {
	--bs-form-check-border-color: var(--bs-light);
	--bs-form-check-bg: var(--bs-light);
}
.form-check-input[type="checkbox"] {
	border-radius: var(--bs-border-radius);
}
.form-check-input:focus {
	outline: var(--aria-outline);
	box-shadow: none;
}


/* bootstrap > forms > input group */
.input-group-sm .btn {
	padding: 0.25rem 0.5rem;
}
.input-group-sm .form-control {
	padding: 0.25rem 0.5rem;
	font-size: var(--bs-body-font-size);
	min-width: 2rem;
}

.input-group > input[type="file"] {
	position: absolute;
	margin: 0;
	inset: 0;
	opacity: 0;
	z-index: 3;
}


/* bootstrap > components > accordion */
.accordion {
	--bs-accordion-active-bg: transparent;
	--bs-accordion-active-color: var(--bs-accordion-btn-color);
}
.accordion-item {
	border-left-width: 0;
	border-right-width: 0;
}
.accordion-button:not(.collapsed) {
	box-shadow: none;
}
.accordion-button:focus:not(:focus-visible) {
	outline: var(--aria-outline);
	box-shadow: none;
}
.accordion-flush {
	--bs-accordion-btn-padding-x: 0;
	--bs-accordion-body-padding-x: 0;
}


/* bootstrap > components > alerts */
.alert {
	margin-bottom:1.25rem;
	padding-left:calc(1.75rem + 1em);
	line-height:1.5;
}
.alert:last-child {
	margin-bottom:0;
}
.alert:before {
	content:'';
	width:1.25em;
	height:1.25em;
	position:absolute;
	top:calc(0.75rem + 0.125em);
	left:1rem;
	background-position:center;
	background-repeat:no-repeat;
	background-size:1em;
}
.alert a {
	color:inherit;
	text-decoration:underline;
}
.alert-info:before {
	background-image:url(../../images/icon-48x48/info.png);
}
.alert-info a {
	color:var(--bs-info-darker);
}
.alert-success:before {
	background-image:url(../../images/icon-48x48/success.png);
}
.alert-success a {
	color:var(--bs-success-darker);
}
.alert-warning:before {
	background-image:url(../../images/icon-48x48/warning.png);
}
.alert-warning a {
	color:var(--bs-warning-darker);
}
.alert-danger:before {
	background-image:url(../../images/icon-48x48/error.png);
}
.alert-danger a {
	color:var(--bs-danger-darker);
}


/* bootstrap > components > badges */
.badge {
	--bs-badge-font-size: 0.9375rem;
	line-height: 1.2;
}


/* bootstrap > components > breadcrumb */
.breadcrumb {
	--bs-breadcrumb-divider: '>';
	--bs-breadcrumb-item-active-color: var(--bs-body-color);
}
.breadcrumb-item {
	margin-bottom: 0;
	color: var(--bs-secondary-color);
}
.breadcrumb-item a,
.breadcrumb-item a:hover {
	color: var(--bs-secondary-color);
	text-decoration: none;
}
.breadcrumb-item:last-child {
	color: var(--bs-body-color);
}


/* bootstrap > components > buttons */
.btn {
	--bs-btn-padding-x: 0.75rem;
	--bs-btn-padding-y: 0.75rem;
	--bs-btn-border-radius: 0;
	position: relative;
}
.btn:focus,
.btn:focus-visible,
.btn:focus:not(:focus-visible) {
	box-shadow: none;
	outline: var(--aria-outline);
}

.btn-link {
	--bs-btn-color: var(--bs-primary);
	--bs-btn-hover-color: var(--bs-primary-hover);
	--bs-btn-active-color: var(--bs-primary-hover);
	text-decoration: none;
}

.btn-sm,
.btn-group-sm > .btn {
	--bs-btn-padding-x: 0.5rem;
	--bs-btn-padding-y: 0.25rem;
	--bs-btn-font-size: 1rem;
}

.btn-lg,
.btn-group-lg > .btn {
	min-width: 10rem;
	--bs-btn-padding-x: 1.75rem;
	--bs-btn-padding-y: 0.875rem;
	--bs-btn-font-size: 1.125rem;
}

.btn [class^="fb-"],
.btn [class*=" fb-"] {
	font-size: 1.5em;
	line-height: 1;
	vertical-align: top;
}


/* bootstrap > components > cards */
.card {
	--bs-card-spacer-x: 1rem;
	--bs-card-spacer-y: 1rem;
	--bs-card-border-color: #cecece;
	margin-bottom: 2rem;
}
.card-body,
.card-actions {
	background-color: var(--bs-card-bg);
}
.card-actions {
	padding: var(--bs-card-spacer-y) var(--bs-card-spacer-x);
	display: flex;
}
.card-actions:not(:first-child) {
	padding-top: 0;
}
.card-actions .btn {
	--bs-btn-padding-x: 0.625rem;
	flex-grow: 1;
}
.card-actions .btn:not(:last-child) {
	margin-right: 0.25rem;
}
.card-title {
	font-size: var(--bs-fs-5);
	font-weight: bold;
}


/* bootstrap > components > dropdowns */
.dropdown-menu {
	--bs-dropdown-border-width: 0;
	--bs-nav-link-padding-x: 1rem;
	--bs-nav-link-padding-y: 0.5rem;
	box-shadow: 0 0 1rem rgba(var(--bs-black-rgb), 0.1);
}
.dropdown-menu:after {
	content: '';
	width: 100%;
	position: relative;
	top: var(--bs-dropdown-padding-y);
	border-top: 8px solid var(--bs-primary);
	display: block;
}


/* bootstrap > components > list group */
.list-group-item {
	margin-bottom: 0;
}
.list-group-gapped {
	--bs-list-group-border-color: var(--bs-light);
	--bs-list-group-bg: var(--bs-light);
}
.list-group-gapped > .list-group-item {
	margin-bottom: var(--bs-spacer-2);
}
.list-group-gapped > .list-group-item:last-child {
	margin-bottom: 0;
}
.list-group-striped > .list-group-item:nth-of-type(2n + 1) {
	--bs-list-group-bg: #f2f2f2;
}


/* bootstrap > components > modal */
.modal {
	--bs-modal-padding: var(--bs-spacer-3);
	--bs-modal-border-width: var(--bs-spacer-3);
	--bs-modal-border-color: rgba(var(--bs-black-rgb), 0.5);
	--bs-modal-header-padding: var(--bs-modal-padding);
	--bs-modal-header-border-width: 0;
	--bs-modal-footer-border-width: 0;
	--bs-modal-footer-gap: var(--bs-spacer-1);
}
@media (min-width: 992px) {
	.modal {
		--bs-modal-padding: var(--bs-spacer-4);
		--bs-modal-border-width: var(--bs-spacer-4);
	}
}
.modal-sm {
	--bs-modal-padding: var(--bs-spacer-3);
	--bs-modal-border-width: var(--bs-spacer-3);
}
.modal-header + .modal-body,
.modal-body + .modal-footer {
	padding-top: 0;
}
.modal-backdrop {
	--bs-backdrop-opacity: 0;
}


/* bootstrap > components > navbar */
.navbar {
	--bs-navbar-padding-y: var(--bs-spacer-3);
	--bs-navbar-brand-margin-end: 1.5rem;
	--bs-navbar-brand-padding-y: 0;
	justify-content: flex-start;
}
.navbar + .navbar {
	padding-top: 0;
}
.navbar-brand {
	--bs-navbar-brand-font-size: var(--bs-body-font-size);
	display: flex;
	align-items: center;
}
.navbar-brand > * + * {
	margin-left: var(--bs-navbar-brand-margin-end);
}
.navbar-brand:hover {
	opacity: 0.6;
}
@media (min-width: 992px) {
	.navbar {
		--bs-navbar-padding-y: var(--bs-spacer-4);
	}
}


/* bootstrap > components > navs & tabs */
.nav-link.disabled,
.nav-link:disabled {
	cursor: not-allowed;
	pointer-events: auto;
}
.nav-item {
	position: relative;
	margin-bottom: 0;
}
.nav-pills {
	--bs-nav-link-padding-x: 1rem;
	--bs-nav-link-padding-y: 0.75rem;
	--bs-nav-link-bg: var(--bs-light);
	--bs-nav-link-color: var(--bs-body-color);
	--bs-nav-pills-link-hover-bg: var(--bs-secondary-color);
	--bs-nav-pills-link-hover-color: var(--bs-body-color);
	--bs-nav-pills-link-active-bg: var(--bs-primary);
	--bs-nav-pills-link-active-color: var(--bs-white);
}
.nav-pills .nav-link {
	background-color: var(--bs-nav-link-bg);
	color: var(--bs-nav-link-color);
}
.nav-pills .nav-link:hover,
.nav-pills .nav-link:focus {
	background-color: var(--bs-nav-pills-link-hover-bg);
	color: var(--bs-nav-pills-link-hover-color);
}
.nav-pills .nav-link:active,
.nav-pills .nav-item.active > .nav-link {
	background-color: var(--bs-nav-pills-link-active-bg);
	color: var(--bs-nav-pills-link-active-color);
}
@media (min-width: 992px) {
	.nav-pills {
		--bs-nav-link-padding-x: 2.5rem;
	}
}
.nav-tabs {
	--bs-nav-link-padding-x: 1rem;
	--bs-nav-link-padding-y: 0.5rem;
	--bs-nav-link-color: var(--bs-white);
	--bs-nav-link-hover-color: var(--bs-white);
	--bs-nav-link-disabled-color: var(--bs-white);
	--bs-nav-tabs-border-width: 0;
	--bs-nav-tabs-link-bg: var(--bs-secondary-color);
	--bs-nav-tabs-link-hover-bg: var(--bs-secondary-hover);
	--bs-nav-tabs-link-active-bg: var(--bs-primary);
	--bs-nav-tabs-link-active-color: var(--bs-white);
	--bs-nav-tabs-link-disabled-bg: var(--bs-secondary-color);
	overflow: auto;
	border-bottom-width: 0.25rem;
	border-bottom-color: var(--bs-primary);
	flex-wrap: nowrap;
}
.nav-tabs .nav-link {
	background-color: var(--bs-nav-tabs-link-bg);
}
.nav-tabs .nav-link:hover:not(.active) {
	background-color: var(--bs-nav-tabs-link-hover-bg);
}
.nav-tabs .nav-link.disabled:hover,
.nav-tabs .nav-link:disabled:hover {
	background-color: var(--bs-nav-tabs-link-disabled-bg);
}
.nav-tabs .nav-item {
	display: flex;
}
.nav-tabs .nav-item ~ .nav-item {
	margin-left: 0.25rem;
}
.nav-tabs [class^="fb-"],
.nav-tabs [class*=" fb-"] {
	display: none;
}
.modal .nav-tabs {
	margin-left: calc(var(--bs-modal-padding) * -1);
	margin-right: calc(var(--bs-modal-padding) * -1);
	padding-left: var(--bs-modal-padding);
	padding-right: var(--bs-modal-padding);
}
@media (min-width: 992px) {
	.nav-tabs {
		--bs-nav-link-padding-y: 0.75rem;
	}
	.nav-tabs [class^="fb-"],
	.nav-tabs [class*=" fb-"] {
		font-size: var(--bs-fs-2);
		line-height: 0.9375;
		display: inline-block;
	}
}
@media (min-width: 1200px) {
	.nav-tabs {
		--bs-nav-link-padding-x: 1.125rem;
		--bs-nav-link-font-size: var(--bs-fs-5);
	}
}
.nav-tabs-alt {
	--bs-nav-link-padding-x: 1rem;
	--bs-nav-link-padding-y: 0.75rem;
	--bs-nav-link-font-size: var(--bs-fs-6);
	--bs-nav-link-color: var(--bs-body-color);
	--bs-nav-link-hover-color: var(--bs-body-color);
}
.nav-tabs-alt .nav-item:not(:last-child) {
	padding-right: 1px;
}
.nav-tabs-alt .nav-item:not(:last-child):after {
	content: '';
	position: absolute;
	inset: 1rem 0 1rem auto;
	border-right: 1px solid #cecece;
}
@media (min-width: 576px) {
	.nav-tabs-alt {
		--bs-nav-link-padding-x: 1.5rem;
	}
}
@media (min-width: 992px) {
	.nav-tabs-alt {
		--bs-nav-link-padding-x: 2.5rem;
		--bs-nav-link-font-size: var(--bs-fs-5);
	}
}


/* bootstrap > components > offcanvas */
.offcanvas,
.offcanvas-sm,
.offcanvas-md,
.offcanvas-lg,
.offcanvas-xl,
.offcanvas-xxl {
	--bs-offcanvas-width: 30rem;
	--bs-offcanvas-padding-x: var(--bs-spacer-3);
	--bs-offcanvas-padding-y: var(--bs-spacer-3);
	--bs-offcanvas-border-width: 0;
	--bs-offcanvas-title-font-size: var(--bs-fs-4);
	max-width: 100%;
}
.offcanvas-header {
	border-bottom: var(--bs-border-width) solid var(--bs-border-color)
}
.offcanvas-footer {
	padding: var(--bs-offcanvas-padding-y) var(--bs-offcanvas-padding-x);
}
.offcanvas-title {
	padding-left: calc(var(--bs-offcanvas-padding-x) + 1em);
	padding-right: calc(var(--bs-offcanvas-padding-x) + 1em);
	font-size: var(--bs-offcanvas-title-font-size);
	font-weight: bold;
	text-align: center;
	flex-grow: 1;
}
.offcanvas .btn-close {
	--bs-btn-close-bg: none;
	--bs-btn-close-opacity: 1;
	--bs-btn-close-hover-opacity: 1;
	--bs-btn-close-focus-shadow: none;
	position: absolute;
	top: calc(var(--bs-offcanvas-padding-y) * 0.5 + var(--bs-offcanvas-title-font-size) * var(--bs-offcanvas-title-line-height) * 0.5 - 0.5em);
	margin: 0;
	border-radius: var(--bs-border-radius);
}
.offcanvas .btn-close:focus {
	outline: var(--aria-outline);
}
.offcanvas .btn-close:before {
	position: absolute;
	top: 50%;
	left: 50%;
	font-family: 'bootstrap-icons';
	font-size: 1.25em;
	color: var(--bs-primary);
	line-height: 1;
	transform: translate(-50%,-50%);
}
.offcanvas-start .btn-close {
	right: var(--bs-offcanvas-padding-x);
}
.offcanvas-start .btn-close:before {
	content: '\f284';
}
.offcanvas-end .btn-close {
	left: var(--bs-offcanvas-padding-x);
}
.offcanvas-end .btn-close:before {
	content: '\f285';
}
.offcanvas-actions {
	display: flex;
}
.offcanvas-actions:not(:first-child) {
	margin-top: var(--bs-offcanvas-padding-y);
}
.offcanvas-actions .btn {
	flex-basis: 0;
	flex-grow: 1;
}
.offcanvas-actions .btn:not(:last-child) {
	margin-right: var(--bs-spacer-1);
}
@media (min-width: 576px) {
	.offcanvas,
	.offcanvas-sm,
	.offcanvas-md,
	.offcanvas-lg,
	.offcanvas-xl,
	.offcanvas-xxl {
		--bs-offcanvas-padding-x: var(--bs-spacer-4);
	}
}


/* bootstrap > helpers > color & background */
.text-bg-muted {
	background-color: var(--bs-light) !important;
	color: #5c5c5c !important
}


/* bootbox */
.bootbox .modal-content {
	min-height: 200px;
}
.bootbox .modal-footer {
	justify-content: center;
}


/* bootstrap datepicker */
.datepicker {
	--bs-dropdown-border-width: 1px;
	--bs-dropdown-border-color: var(--bs-border-color);
	padding: var(--bs-spacer-3);
	border-radius: var(--bs-border-radius);
}
.datepicker td,
.datepicker th {
	width: 2.5rem;
	height: 2.5rem;
	padding: var(--bs-spacer-2) var(--bs-spacer-1);
	border-radius: var(--bs-border-radius);
}
.datepicker table tr td.new,
.datepicker table tr td.old {
	color: var(--bs-secondary-color);
}
.datepicker table tr td.disabled,
.datepicker table tr td.disabled:hover {
	color: var(--bs-light);
}
.datepicker table tr td.active.active,
.datepicker table tr td.active.disabled,
.datepicker table tr td.active.disabled.active,
.datepicker table tr td.active.disabled.disabled,
.datepicker table tr td.active.disabled:active,
.datepicker table tr td.active.disabled:hover,
.datepicker table tr td.active.disabled:hover.active,
.datepicker table tr td.active.disabled:hover.disabled,
.datepicker table tr td.active.disabled:hover:active,
.datepicker table tr td.active.disabled:hover:hover,
.datepicker table tr td.active.disabled:hover[disabled],
.datepicker table tr td.active.disabled[disabled],
.datepicker table tr td.active:active,
.datepicker table tr td.active:hover,
.datepicker table tr td.active:hover.active,
.datepicker table tr td.active:hover.disabled,
.datepicker table tr td.active:hover:active,
.datepicker table tr td.active:hover:hover,
.datepicker table tr td.active:hover[disabled],
.datepicker table tr td.active[disabled] {
	background: var(--bs-primary);
}
.datepicker-dropdown:before {
	display: none;
}
.datepicker-dropdown:after {
	width: 10px;
	height: 10px;
	border-style: solid !important;
	border-color: var(--bs-dropdown-border-color) !important;
	background-color: var(--bs-dropdown-bg);
	transform: rotate(45deg);
}
.datepicker-dropdown.datepicker-orient-top:after {
	border-width: 0 1px 1px 0;
}
.datepicker-dropdown.datepicker-orient-bottom:after {
	border-width: 1px 0 0 1px;
}
.datepicker-inline {
	width: calc(var(--bs-spacer-3) * 2 + 2.5rem * 7);
	border-width: var(--bs-border-width);
	border-style: solid;
	border-color: var(--bs-border-color);
	background-color: var(--bs-body-bg);
}
.has-error + .datepicker-inline {
	border-color: var(--bs-danger);
}


/* bootstrap icons */
.bi-fw {
	width: 1.5em;
	text-align: center;
	display: inline-block;
}


/* bootstrap input spinner */
.input-spinner {
	width: 200px;
	max-width: 100%;
	flex-shrink: 0;
	flex-wrap: nowrap;
}
.input-spinner.input-group-sm {
	width: 150px;
}
.input-spinner .form-control {
	border-left-width: 0;
	border-right-width: 0;
}
.input-spinner .btn-decrement,
.input-spinner .btn-increment {
	--bs-btn-border-color: var(--bs-border-color);
	--bs-btn-bg: var(--bs-white);
	--bs-btn-font-size: 1.5em;
	--bs-btn-color: var(--bs-primary);
	--bs-btn-line-height: 1;
	--bs-btn-hover-border-color: var(--bs-border-color);
	--bs-btn-hover-bg: var(--bs-light);
	--bs-btn-active-border-color: var(--bs-border-color);
	--bs-btn-active-bg: var(--bs-light);
	--bs-btn-disabled-border-color: var(--bs-border-color);
	--bs-btn-disabled-bg: var(--bs-light);
	--bs-btn-disabled-color: var(--bs-secondary-color);
	position: relative;
}
.input-spinner .btn-decrement:disabled,
.input-spinner .btn-increment:disabled {
	opacity: 1;
}
.input-spinner .btn-decrement:after,
.input-spinner .btn-increment:after {
	content: '';
	position: absolute;
	inset: 0;
}
.input-spinner .btn-decrement {
	border-right-width: 0;
}
.input-spinner .btn-increment {
	border-left-width: 0;
}
[type=number].input-spinner,
[type=number][x-input-spinner] {
	width: 0;
	height: 0;
	position: absolute;
	padding: 0;
	opacity: 0;
	display: block !important;
}
.has-error + .input-spinner .btn-decrement,
.has-error + .input-spinner .btn-increment {
	--bs-btn-border-color: var(--bs-danger);
	--bs-btn-hover-border-color: var(--bs-danger);
}


/* form essentials */
.password-peekaboo-toggle .bi {
	font-size: 1.125rem;
}


/* responsive ui */
.hamburger {
	--hamburger-size: 40px;
	--hamburger-color: var(--bs-primary);
	--hamburger-hover-color: var(--bs-primary);
}


/* select2 */
.select2-container--bs5 {
	--select2-arrow-size: 1rem;
	--select2-arrow-color: var(--bs-primary);
	--select2-selection-padding-y: 0.75rem;
}
.select2-container--bs5 .select2-selection--single .select2-selection__arrow b,
.select2-container--bs5.select2-container--open .select2-selection--single .select2-selection__arrow b {
	width: calc(var(--select2-arrow-size) / 1.4);
	height: calc(var(--select2-arrow-size) / 1.4);
	margin-top: calc(var(--select2-arrow-size) * -.25);
	border-width: 0 2px 2px 0;
	border-style: solid;
	border-color: var(--select2-arrow-color);
	transform: rotate(45deg);
}


/* stylish select */
.stylish-select {
	--stylish-select-arrow-color: var(--bs-primary);
}
.stylish-select-arrow::before {
	right: calc(0.75rem + var(--stylish-select-arrow-size) * 0.2);
}


/* swiper */
:root {
	--swiper-theme-color: var(--bs-primary);
	--swiper-pagination-bullet-size: 0.75rem;
}
.modal .swiper {
	margin-left: calc(var(--bs-modal-padding) * -1);
	margin-right: calc(var(--bs-modal-padding) * -1);
	padding-left: var(--bs-modal-padding);
	padding-right: var(--bs-modal-padding);
}
