/**
* Written by: Mohd Syahid
* Year		: 2023
* Website	: msyahid.com
*/


body {
	font-family: "open sans", "segoe ui";
    font-size: 14px;
    margin: 0;
    padding: 0;
}
label {
	font-weight: bold;
}

li {
	margin-left: 20px;
}
p.small{
	margin-bottom: 0;
}
small.alert{
    padding: 5px;
	padding-left: 10px;
    display: block;
	margin: 0;
	margin-top: 3px;
}
input[type=radio], input[type=checkbox] {
    border: 1px solid #b4b9be;
    background: #fff;
    color: #555;
    clear: none;
    cursor: pointer;
    display: inline-block;
    line-height: 0;
    min-height: 18px !important;
    height: 18px;
    margin: 1px;
    outline: 0;
    padding: 0!important;
    text-align: center;
    vertical-align: middle;
    width: 18px;
    min-width: 18px;
    -webkit-appearance: none;
    -webkit-box-shadow: inset 0 1px 2px rgba(0,0,0,.1);
    box-shadow: inset 0 1px 2px rgba(0,0,0,.1);
    -webkit-transition: .05s border-color ease-in-out;
    transition: .05s border-color ease-in-out;
}

input[type=radio] {
    -webkit-border-radius: 50%;
    border-radius: 50%;
    margin-right: 4px;
    line-height: 10px;
}

input[type=radio]::focus {
	border-color: #5b9dd9;
    -webkit-box-shadow: 0 0 2px rgba(30,140,190,.8);
    box-shadow: 0 0 2px rgba(30,140,190,.8);
}

input[type=radio]:checked:before {
     content: "\f111";
    -webkit-border-radius: 50%;
    font-size: 11px !important;
    color: #1e8cbe;
    vertical-align: middle !important;
    margin-top: 3px;
}

input[type=checkbox]:checked:before {
    content: "\f00c";
    margin: 0;
    color: #1e8cbe;
    font-size: 16px !important;
}

input[type=radio]:checked:before
, input[type=checkbox]:checked:before {
    float: left;
    display: inline-block;
    vertical-align: middle;
    width: 17px;
    font: normal normal normal 14px/1 FontAwesome;
    font-size: inherit;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
.background, .backdrop {
    background-color: #3f689c;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-size: cover;
}
.background {
	background: url('../images/bg.jpg');
	background-repeat: no-repeat;
	background-size: 100% auto;
}
.backdrop {
	background: #223444;
    filter: alpha(opacity=50);
    opacity: .8;
}

.login-image {
   
    position: absolute;
    top: 310px;
    right: 220%; /* Adjust as needed for horizontal alignment */
    transform: translate(-50%, -50%); /* Center the image */
    z-index: 2; /* Place the image on top of other elements */
    width: 200px; /* Set your desired width */
    height: 150px; /* Set your desired height */
  }

.login-container {
	max-width: 370px;
    width: 100%;
    z-index: 3;
    position: absolute;
    left: 70%;
	top: 50px;
	bottom: 50px;
    margin-left: -175px;
}
.login-body {
	padding: 25px 25px 25px 25px;
    background: #FFFFFF;
}
.login-header img {
    max-width: 100%;
    max-height: 50px;
    width: auto;
}
.login-header {
  text-align: center;
    padding: 25px;
    padding-bottom: 20px;
    background: #4a6da1;
    border-bottom: rgba(89, 89, 89, 0.19);
}
.login-header h3 {
    font-weight: lighter;
    font-size: 25px;
    margin: 0;
	margin-top: 10px;
}
.login-footer {
	background: #f1f1f1;
	text-align:center;
	padding: 15px 25px;
}
.login-footer p {
	margin-bottom: 5px;
}

.form-control {
	border-radius: 0;
}
.btn {
	border-radius:0;
}
.login-input, .login-input:focus  {
	border: 0;
	border-bottom: 1px solid #CCCCCC;
	outline: none;
	box-shadow: none;
}
.input-group-text {
	border-radius: 0;
}
.login-container .input-group-text {
	background: none;
    border: 0;
}

.form-login {
	margin: 0;
}

.login-container .btn {
	height: calc(2.75rem + 2px);
}
.login-container .copyright {
	background: none;
	color: #DCDCDC;
	text-align:center;
	margin-top: 10px;
	margin-bottom: 15px;
}

.login-container .copyright a {
	color: #DCDCDC;
}

.form-register {
	margin: 0;
	margin-top: 20px;
}

.alert {
	border-radius: 0;
}

.login-container .alert-last{
	margin: 0;
}


.checkbox label {
	cursor: pointer;
}
.progress {
	border-radius:0;
}

.form-inline input:not(:last-child),
.form-inline select:not(:last-child) {
	margin-right:3px;
}

@media screen and (max-width: 500px) {
	.login-container {
		margin: auto;
		left: 7px;
		right: 7px;
		width: auto;
		top: 20px;
	}
	
	.login-body {
		padding: 20px;
	}
	
	.login-header {
		padding: 20px;
		/* padding-bottom: 0; */
	}
	.login-footer {
		padding: 20px 20px;
	}
	input, select {
		max-width: 100% !important;
		float:none;
		margin-top: 3px;
	}
	.form-inline input,
	.form-inline select {
		margin-right: 0 !important;
	}
}

.sharedoc-animation {
	margin-top: 12px;
	margin-bottom: 4px;
	height: 56px;
	display: flex;
	align-items: center;
	justify-content: center;
}

.sharedoc-scene {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 160px;
	height: 48px;
}

.sharedoc-doc {
	position: absolute;
	left: 0;
	font-size: 22px;
	color: rgba(255, 255, 255, 0.95);
	animation: sharedoc-fly 3s ease-in-out infinite;
	filter: drop-shadow(0 2px 4px rgba(0,0,0,0.3));
}

.sharedoc-doc .fa {
	display: block;
}

.sharedoc-user {
	position: absolute;
	right: 0;
	font-size: 24px;
	color: rgba(255, 255, 255, 0.7);
	animation: sharedoc-receive 3s ease-in-out infinite;
	filter: drop-shadow(0 2px 4px rgba(0,0,0,0.3));
}

.sharedoc-trail {
	position: absolute;
	left: 32px;
	right: 36px;
	display: flex;
	align-items: center;
	justify-content: space-around;
	height: 4px;
}

.sharedoc-trail span {
	width: 5px;
	height: 5px;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.5);
	animation: sharedoc-dot 3s ease-in-out infinite;
}

.sharedoc-trail span:nth-child(1) { animation-delay: 0s; }
.sharedoc-trail span:nth-child(2) { animation-delay: 0.15s; }
.sharedoc-trail span:nth-child(3) { animation-delay: 0.30s; }

@keyframes sharedoc-fly {
	0%   { transform: translateX(0px);   opacity: 0; }
	10%  { transform: translateX(0px);   opacity: 1; }
	70%  { transform: translateX(110px); opacity: 1; }
	82%  { transform: translateX(118px); opacity: 0; }
	100% { transform: translateX(0px);   opacity: 0; }
}

@keyframes sharedoc-receive {
	0%   { color: rgba(255,255,255,0.7); transform: scale(1);    }
	65%  { color: rgba(255,255,255,0.7); transform: scale(1);    }
	75%  { color: rgba(255,255,255,1);   transform: scale(1.18); filter: drop-shadow(0 0 8px rgba(255,255,255,0.8)); }
	88%  { color: rgba(255,255,255,1);   transform: scale(1.08); }
	100% { color: rgba(255,255,255,0.7); transform: scale(1);    }
}

@keyframes sharedoc-dot {
	0%   { opacity: 0; transform: scale(0.6); }
	20%  { opacity: 0; }
	40%  { opacity: 1; transform: scale(1); }
	70%  { opacity: 1; }
	82%  { opacity: 0; }
	100% { opacity: 0; }
}

.login-left-panel {
	position: fixed;
	left: 0; top: 0; bottom: 0;
	width: 62%;
	display: flex;
	flex-direction: column;
	justify-content: center;
	padding: 50px 120px 50px 22%;
	z-index: 2;
	color: #fff;
	overflow: hidden;
}
.llp-logo-wrap { margin-bottom: 24px; }
.llp-logo {
	max-height: 52px;
	width: auto;
	filter: brightness(0) invert(1);
	opacity: 0.9;
}
.llp-title {
	font-size: 30px;
	font-weight: 700;
	margin: 0 0 4px;
	letter-spacing: -0.5px;
	color: #fff;
}
.llp-subtitle {
	font-size: 12px;
	opacity: 0.65;
	margin: 0 0 16px;
	text-transform: uppercase;
	letter-spacing: 0.1em;
}
.llp-desc {
	font-size: 13.5px;
	line-height: 1.75;
	opacity: 0.82;
	max-width: 430px;
	margin-bottom: 20px;
}
.llp-desc strong { color: #93c5fd; font-weight: 600; }
.llp-features {
	list-style: none;
	padding: 0;
	margin: 0;
}
.llp-features li {
	font-size: 13px;
	opacity: 0.85;
	margin-bottom: 9px;
	display: flex;
	align-items: center;
	gap: 9px;
	margin-left: 0;
}
.llp-features li .fa {
	color: #6ee7b7;
	font-size: 13px;
	flex-shrink: 0;
}
.llp-anim {
	position: relative;
	height: 110px;
	width: 340px;
	margin: 0 0 18px;
}
.llp-server {
	position: absolute;
	left: 0; top: 50%;
	transform: translateY(-50%);
	font-size: 30px;
	color: rgba(255,255,255,0.92);
	filter: drop-shadow(0 0 10px rgba(147,197,253,0.6));
}
.llp-user {
	position: absolute;
	font-size: 20px;
	color: rgba(255,255,255,0.7);
}
.llp-user-1 { right: 10px; top:  6px; }
.llp-user-2 { right: 10px; bottom: 6px; }
.llp-user-3 { right: 70px; top: 2px; }
.llp-user-4 { right: 70px; bottom: 2px; }
.llp-doc {
	position: absolute;
	left: 38px; top: 50%;
	transform: translateY(-50%);
	font-size: 15px;
	color: #93c5fd;
	opacity: 0;
	animation-duration: 2.6s;
	animation-iteration-count: infinite;
	animation-timing-function: ease-in-out;
}
.llp-doc-1 { animation-name: llp-fly-1; animation-delay: 0s;    }
.llp-doc-2 { animation-name: llp-fly-2; animation-delay: 0.65s; }
.llp-doc-3 { animation-name: llp-fly-3; animation-delay: 1.3s;  }
.llp-doc-4 { animation-name: llp-fly-4; animation-delay: 1.95s; }
@keyframes llp-fly-1 {
	0%   { transform: translate(0,-50%) scale(.7); opacity:0; }
	8%   { opacity:1; }
	78%  { transform: translate(270px,-52px) scale(1); opacity:1; }
	92%  { transform: translate(278px,-54px) scale(.7); opacity:0; }
	100% { transform: translate(0,-50%) scale(.7); opacity:0; }
}
@keyframes llp-fly-2 {
	0%   { transform: translate(0,-50%) scale(.7); opacity:0; }
	8%   { opacity:1; }
	78%  { transform: translate(250px,22px) scale(1); opacity:1; }
	92%  { transform: translate(258px,24px) scale(.7); opacity:0; }
	100% { transform: translate(0,-50%) scale(.7); opacity:0; }
}
@keyframes llp-fly-3 {
	0%   { transform: translate(0,-50%) scale(.7); opacity:0; }
	8%   { opacity:1; }
	78%  { transform: translate(210px,-58px) scale(1); opacity:1; }
	92%  { transform: translate(218px,-60px) scale(.7); opacity:0; }
	100% { transform: translate(0,-50%) scale(.7); opacity:0; }
}
@keyframes llp-fly-4 {
	0%   { transform: translate(0,-50%) scale(.7); opacity:0; }
	8%   { opacity:1; }
	78%  { transform: translate(200px,28px) scale(1); opacity:1; }
	92%  { transform: translate(208px,30px) scale(.7); opacity:0; }
	100% { transform: translate(0,-50%) scale(.7); opacity:0; }
}
.llp-content { position: relative; z-index: 1; }
@media screen and (max-width: 900px) {
	.login-left-panel { display: none; }
}