body{
	display: flex;
	flex-direction: column;
	min-height: 100vh;
	margin: 0;
	font-family: 'Montserrat', sans-serif;	
	color: #434343;
}

h1, h2, h3, h4, h5, h6 {
	font-weight: bold;
}

p, span, small, li, label {
	font-weight: normal;
}

main {
  flex: 1;
}

a:hover{
	color: #4244cd !important;
	text-decoration: underline !important;
}

/* datatables */
table, th, td{
	font-size: 14px !important;
}

thead{
	background: #ddd;
	border-top:	1px solid #212529;
}

.dt-info, .dt-length label, .dt-search label{
	font-size: 11px !important;
	font-family: 'Montserrat', sans-serif;
}

.dt-column-title{
	font-weight: bold;
	font-family: 'Montserrat', sans-serif;
}
/* datatables */


/* alert */
.inputerror{
	border: 1px solid red !important;
}

.message_error{
	font-size: 11px;
	color: red;
}

.alert-warning, .password-warning {
    background: none !important;
    border: none !important;
    font-size: 11px !important;
	color: red !important;
}

.message_success{
	font-size: 11px;
	color: #32cd32;
}

#loader-proc{
	margin-top: 10px;
}
/* alert */


/* MENU */
.navbar-nav .nav-item{
	margin-right: 15px;
}

.navbar-light .navbar-nav .nav-link{
	font-size: 12px;
	text-transform: uppercase;
	font-weight: bold;
	color: #4244cd;
}

.navbar-expand-lg .navbar-nav .dropdown-menu{
	position: absolute;
	top: 25px;
}

.navbar-text{
	font-size: 12px;
}

.dropdown-item{
	font-size: 12px;
    padding: 2px 15px;
}
/* MENU */


.img-responsive{
	max-width: 100%;
}

.parent-menu{
	font-size: 12px;
    color: #4244cd;
}

.tooltip {
  --bs-tooltip-bg: #333;      /* Background color */
  --bs-tooltip-color: #fff;   /* Text color */
  font-size: 10px;            /* Font size */
  padding: 5px 10px;          /* Inner padding */
  border-radius: 8px;         /* Rounded corners */
}

.card-body {
    flex: 1 1 auto;
    padding: 5px 15px;
}

.page-item.active .page-link {
    z-index: 3;
    color: #fff;
    background-color: #4244cd;
    border-color: #4244cd;
}

#filterSection label{
	font-size: 12px;
}

.boxmenu {
	height:130px; 
	border-radius:10px;
	text-transform: uppercase;
	background-color: #476DAF;
}

.boxmenu h5{
	font-size: 16px;
}

.list-article li{
	margin-bottom: 20px;
	margin-left: -30px;
	list-style-type: none;	
}

.list-article li small{
	font-size: 12px;
	color: #333;
}

.list-article li a{
	text-transform: uppercase;
	font-weight: bold;
	text-decoration: none;
	color: #151F48;
}

.photo-container{
	min-height: 450px;
}

.content small, .content sup{
	font-size:10px;
}

.content small a, .content small a:hover{
	text-decoration: none !important;
}

a.btn:hover{
	text-decoration: none !important;
	color: #fff !important;
}


/* FORM */
.form-label{
	font-size:12px;
}
.form-control{
	font-size:13px;
}
.btn-primary, .btn-primary:active, .btn-primary:hover, .btn-primary:focus{
	background: #151f48;	
}

/* FOOTER */

.bg-footer{
	background-color: #fcfcf3;
}

.bg-copyright{
	background-color: #151f48;
}

footer .contact{
	font-size: 13px;
	line-height: 1.5rem;
}

footer .socmed li{
	list-style-type: none;
	margin-bottom: 5px;
	margin-left: -30px;
}

footer .socmed li a{
	font-size: 12px;
	line-height: 1.5rem;
	color: #151f48;
	text-decoration: none;
	font-weight: bold;
}

footer .copyright{
	font-size: 14px;
}

.mfp-image-holder .mfp-content {
    max-width: 90% !important;
}

.modal-dialog {
	max-width: 500px;
	top: 15%;
}

.modal-backdrop{
	background: #fff;
}

.btn-floating {
    position: fixed;
    bottom: 5%;
    right: 1%;
    z-index: 9999;
    transition: bottom 0.2s ease; 
}

.btn-floating img{
	width: 150px;
}


/* form-pendaftaran */

.success {
	background: #d4edda;
	color: #155724;
	padding: 10px;
	border: 1px solid #c3e6cb;
	margin-bottom: 15px;
	border-radius: 5px;
	width: 400px;
}

.form-pendaftaran p{
	font-size: 14px;
	margin-top: 5px;
	margin-bottom: 5px;
}

.form-pendaftaran .form-label {
    font-size: 14px;
    margin-bottom: 5px;
}

.form-pendaftaran .form-control {
    font-size: 12px;
	font-weight: bold;
	margin: 2px 0;
}

.form-pendaftaran .form-select {
    font-size: 12px;
	font-weight: bold;
	margin: 2px 0;
}

.form-pendaftaran small{
	font-size:10px;
}

.form-pendaftaran li{
	font-size: 14px;
    margin-left: 15px;
}

hr.custom-line {
	border: none;                /* Remove default border */
	height: 1px;                  /* Thickness */
	background-color: #000;       /* Line color */
	width: 100%;                  /* Full width */
	margin: 20px 0;               /* Space above and below */
}

.ten-columns > div {
	width: 20%;
	max-width: 20%;
	padding: 0;
	flex: 0 0 20%;
}


/* MOBILE */
@media (max-width: 767px){
	.modal-content{
		width: 95%;
		margin: 0 auto;
		margin-top: 5%;
	}
	
	table{
		width: 100% !important;
	}
	
	iframe{
		max-width: 100% !important;
		height: 350px;
	}
	
	.btn-floating {
		bottom: 8%;
	}
	
	.btn-floating img{
		width: 125px;
	}
	
	.form-pendaftaran table {
        width: 100% !important;
        min-width: 600px !important;
    }
	
	.ten-columns {
		display: flex;
		flex-wrap: wrap;
	}
	.ten-columns > div {
		width: 50%;
		padding: 0;
		max-width: 50%;
        flex: auto;
	}
	
	.photo-container{
		min-height: 300px;
	}
}


/* PRINT */
@media print {
    body {
        margin: 0;
        background: white;
        font-size: 14px;
    }

    * {
        -webkit-print-color-adjust: exact;
        color-adjust: exact;
    }

    .no-print, button, a.button {
        display: none !important;
    }

    table {
        width: 100% !important;         /* Force full page width */
        max-width: 100% !important;     /* No unnecessary limit */
        border-collapse: collapse;
    }

    table td, table th {
        word-wrap: break-word;          /* Wrap long text */
        white-space: normal;            /* Allow wrapping */
    }

    img {
        page-break-inside: avoid;
        max-width: 100% !important;     /* Fit page width */
        height: auto;
    }

    .preview-container {
        width: 100% !important;
        max-width: 100% !important;     /* Allow full printable width */
        margin: 0 auto;
    }
	
	.page-break {
		page-break-before: always;
	}
}
