/* Dasar */

@font-face {
	font-family: "PTSans-Regular";
	src: url('../aset/PTSans-Regular.ttf');
}

@font-face {
	font-family : 'PTSans-Bold';
	src : url('../aset/PTSans-Bold.ttf');
}

*:focus:not(.focus-visible) {
	outline: none;
}

body {
	background : #EFF1F4;
	color : black;
	font-family : 'PTSans-Regular';
	font-size : 1rem;
}

a {
	color : #06367c;
	cursor : pointer;
	text-decoration : none;
}

footer {
	background : #132f64;
	border : 1px solid #174DA1;
	border-bottom : 0;
	border-top-left-radius : 20px;
	border-top-right-radius : 20px;
	bottom : 0;
	color : white;
	font-size : 0.8rem;
	left : 0;
	margin : auto;
	padding : 0.75rem 0;
	position : fixed;
	right : 0;
	text-align : center;
	width : 14.25rem;
	z-index : 1030;
}

/* Huruf */

.galat {
	color : red;
	font-size : 12px;
	margin : 1px 0 -5px 0;
}

/* Pondasi */

#laman {
	margin : 96px auto 78px auto;
}

#laman .dropdown-menu {
	border-color : #1E4490;
	border-top-left-radius : 0;
	border-top-right-radius : 0;
	margin-top : -2px !important;
	padding : 0 0.5rem;
	vertical-align : middle;
}

#laman .dropdown-menu li {
	border-bottom : 1px solid;
	padding : 0.25rem;
}

#laman .dropdown-menu li:last-child {
	border-bottom : 0;
}

#laman .dropdown-item:focus, #laman .dropdown-item:hover {
	color : #6f8398;
	text-decoration : none;
	background : none;
}

#laman .menu {
	background : #132f64;
	border-bottom-right-radius : 5rem;
	border-top-right-radius : 5rem;
	color : white;
	font-size : 1.1rem;
	margin-bottom : 25px;
	padding : 0.375rem 1.25rem 0.375rem 0.75rem;
	width : fit-content;
}

#laman .nama {
	background : #132f64;
	border-radius : 5rem;
	color : white;
	font-size : 1rem;
	margin : 0 auto 25px auto;
	padding : 0.375rem 1.25rem;
	width : fit-content;
}

#laman .nama-kiri {
	background : #132f64;
	border-bottom-right-radius : 5rem;
	border-top-right-radius : 5rem;
	color : white;
	font-size : 1rem;
	margin-bottom : 25px;
	padding : 0.375rem 1.25rem 0.375rem 0.75rem;
	width : fit-content;
}

#laman .tengah {
	margin : auto;
	width : fit-content;
}

#navigasi a {
	text-decoration : none;
}

#navigasi .dropdown-menu {
	border-color : #000;
	border-top : 0;
	margin-top : 7px !important;
	padding : 0 0.5rem;
}

#navigasi .dropdown-menu li {
	border-bottom : 1px solid;
	padding : 0.25rem;
}

#navigasi .dropdown-menu li:last-child {
	border-bottom : 0;
}

#navigasi .dropdown-item:focus, #navigasi .dropdown-item:hover {
	color : #6f8398;
	text-decoration : none;
	background : none;
}

#navigasi .intan, #navigasi .intan a {
	color : white;
}

#navigasi .navbar {
	background : #1E4490;
	border-top : 0;
	color : white;
	padding : 1rem 0;
}

#navigasi .navbar .logo {
	margin-top : -3px;
}

#pintu {
	background :#ffffff;
	border : 1px solid #194f9b;
	border-radius : 11px;
	color : #6f8398;
	margin : 5px auto 0 auto;
	opacity : 0.75;
	padding : 30px;
	text-align : center;
	width : 216px;
}

#pintu .otentikasi {
	margin: auto;
	width : 8.5rem;
}

#pintu .otentikasi .input-group-text {
	justify-content : center;
	width : 3.5rem;
}

#pintu .sandi {
	margin: auto;
	width : 7.4rem;
}

#pintu .sandi .input-group-text {
	justify-content : center;
	width : 2.6rem;
}

/* Modifikasi */

::-webkit-file-upload-button {
	display:none;
}

.accordion .btn-primary, .accordion .btn-primary:focus {
	background : #132f64;
	border : 0;
}

.accordion-item {
	background : transparent;
	border : 0;
}

.btn-close:hover, .btn-close:focus {
	outline : 0;
	box-shadow : none;
}

.dataTables_filter input:focus {
	border-color : #cccccc;
	box-shadow : none;
}

.dataTables_filter, .dataTables_paginate {
	display : flex;
	float : none;
	justify-content : center;
	text-align : center;
}

.dataTables_ScrollX {
	overflow : auto;
	position : relative;
	width : 100%;
}

.form-floating > label {
	z-index : 0;
}

.form-floating > label::after {
	background-color : transparent !important;
}

.form-upload {
	border : 1px solid #ced4da;
	border-radius : 0.375rem;
	color : #6c757d;
	font-size : 0.875em;
	max-width : 434px;
	padding : 0.375rem;
}

.form-upload .file-select {
	cursor : pointer;
	display : block;
	height : 44px;
	overflow : hidden;
	padding : 0 0.375rem;
	position : relative;
	text-align : left;
}

.form-upload .file-select input[type=file] {
	z-index : 100;
	cursor : pointer;
	filter : alpha(opacity=0);
	height : 100%;
	left : 0;
	opacity : 0;
	position : absolute;
	top : 0;
}

.form-upload .file-select .label {
	cursor : pointer;
	font-size : 0.85rem;
	margin-top : 1px;
}

.form-upload.active, .form-upload:focus {
	border-color : #86b7fe;
	outline : 0;
	box-shadow : 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
}

.input-group .form-control:focus {
	border-color : #ced4da;
	box-shadow : none;
}

.modal .logo {
	margin-bottom : 4px;
	margin-right : 5px;
	width : 25px !important;
}

.modal-backdrop {
	background : rgba(197, 216, 246, 0.75);
}

.offcanvas {
	width : 19rem !important;
}

.offcanvas-header {
	background : #1E4490;
	color : white;
}

.page-item:first-child .page-link {
	border-top-left-radius: 0;
	border-bottom-left-radius: 0;
}

.page-item:last-child .page-link {
	border-top-right-radius: 0;
	border-bottom-right-radius: 0;
}

.page-item.active .page-link {
	color: #000 !important;
	background-color: #e0e0e0 !important;
	border-color: #cccccc !important; 
}

.page-link {
	color: #000 !important;
	background-color: #fff !important;
	border: 1px solid #dee2e6 !important; 
}

.page-link:focus {
	z-index: 2;
	outline: 0;
	box-shadow: 0 0 0 0rem rgba(0, 0, 0, 0);
}

.page-link:hover {
	color: #000 !important;
	background-color: #f5f5f5 !important;
}

.select2-container--bootstrap-5 .select2-selection {
	border-radius : 0.375rem;
	min-height : calc(3.5rem + 2px);
	line-height : 1.25;
}

.select2-container--bootstrap-5.select2-container--focus .select2-selection, .select2-container--bootstrap-5.select2-container--open .select2-selection {
	border-color : #86b7fe;
	box-shadow : 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
}

.select2-container--bootstrap-5.select2-container--open.select2-container--below .select2-selection {
	border-bottom : 1px solid #86b7fe;
	border-bottom-right-radius :  0.375rem;
	border-bottom-left-radius :  0.375rem;
}

.select2-container--bootstrap-5.select2-container--open.select2-container--above .select2-selection {
	border-top : 1px solid #86b7fe;
	border-top-left-radius :  0.375rem;
	border-top-right-radius : 0.375rem;
}

.select2-container--bootstrap-5 .select2-dropdown .select2-search .select2-search__field {
	margin : 7px 0;
}
  
.select2-container--bootstrap-5 .select2-dropdown .select2-results__options:not(.select2-results__options--nested) {
	border-top : 1px dashed #86b7fe;
	max-height: 15rem;
	overflow-y: auto;
	padding : 10px 0;
}

.select2-container--bootstrap-5 .select2-dropdown .select2-results__options .select2-results__option {
	padding: 0.375rem 0.75rem;
	font-size: 1rem;
	font-weight: 400;
	line-height : 1;
	min-height : 25px;
}

.select2-container--bootstrap-5 .select2-dropdown .select2-results__options .select2-results__option.select2-results__option--highlighted {
	color: #000;
	background-color: #edf3ff;
}

.select2-container--bootstrap-5 .select2-dropdown .select2-results__options .select2-results__option.select2-results__option--selected, .select2-container--bootstrap-5 .select2-dropdown .select2-results__options .select2-results__option[aria-selected=true]:not(.select2-results__option--highlighted) {
	color: #000;
	background-color: #dae6ff;
}

.table th {
	background : #e7eaef !important;
	height : 50px;
	text-align : center !important;
	vertical-align : middle;
}

@media (min-width: 576px) {

	#bawah .logo {
		padding : 38px 0 0 0;
		text-align : center;
	}
	
	#navigasi {
		padding : 0 0.5rem;
	}

}

@media (max-width: 767.98px) {

	#laman .col-md-auto {
		margin-bottom : 30px;
		width : auto;
	}

}

@media (max-width: 575.98px) {

	header ul {
		margin : 0.75rem 0;
	}

	header li.nav-item {
		border-bottom : 1px solid #6f8398;
		text-align : left;
	}

	header li.nav-item:first-child {
		border-top : 1px solid #6f8398;
	}

	header .navbar {
		padding : 0.75rem 0;
	}

	.nav-link {
		padding : 0.2rem 0.5rem;
	}

}