/* Login page styling — Medikarna v2.0 */
.navbar-fixed-top { display: none !important; }
body { padding-top: 0 !important; }
#jumboContainer, .jumbotron { display: none !important; }

body {
	background: linear-gradient(135deg, rgba(28, 200, 238, 0.55), rgba(123, 63, 228, 0.55)), url('/www/images/login-bg.jpg') center/cover no-repeat fixed !important;
	min-height: 100vh;
	font-family: 'Open Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
}

.login-wrap {
	min-height: 100vh;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 24px;
}

.login-card {
	width: 100%;
	max-width: 420px;
	background: rgba(255, 255, 255, 0.85);
	backdrop-filter: blur(18px) saturate(140%);
	-webkit-backdrop-filter: blur(18px) saturate(140%);
	border: 1px solid rgba(255, 255, 255, 0.6);
	border-radius: 18px;
	padding: 44px 38px 30px;
	box-shadow: 0 25px 80px rgba(0, 0, 0, 0.30), 0 0 0 1px rgba(255, 255, 255, 0.1) inset;
	animation: cardIn 0.5s cubic-bezier(.2,.8,.2,1);
}
@keyframes cardIn {
	from { opacity: 0; transform: translateY(20px) scale(0.97); }
	to { opacity: 1; transform: none; }
}

.login-brand { text-align: center; margin-bottom: 28px; }
.login-brand img { height: 56px; width: auto; }

.login-card h3 {
	text-align: center;
	margin: 0 0 6px;
	color: #1a2940;
	font-size: 22px;
	font-weight: 600;
	letter-spacing: -0.01em;
}
.login-subtitle {
	text-align: center;
	color: #6c7a89;
	font-size: 13px;
	margin: 0 0 24px;
}

.login-card .form-control {
	height: 48px;
	font-size: 15px;
	border: 1px solid #d8dde3;
	border-radius: 10px;
	padding: 10px 16px;
	background: #fff;
	transition: border-color .15s, box-shadow .15s;
	box-shadow: none;
}
.login-card .form-control:focus {
	border-color: #7B3FE4;
	box-shadow: 0 0 0 4px rgba(123, 63, 228, 0.15);
	outline: none;
}
.login-card .form-group { margin-bottom: 14px; }

.login-card .btn-primary {
	display: block;
	width: 100%;
	height: 50px;
	font-size: 15px;
	font-weight: 600;
	letter-spacing: 0.02em;
	border: none;
	border-radius: 10px;
	background: linear-gradient(135deg, #7B3FE4 0%, #1CC8EE 100%);
	color: #fff;
	margin-top: 12px;
	transition: transform .12s, box-shadow .15s, filter .15s;
	box-shadow: 0 6px 20px rgba(123, 63, 228, 0.32);
}
.login-card .btn-primary:hover { transform: translateY(-1px); filter: brightness(1.05); box-shadow: 0 10px 28px rgba(123, 63, 228, 0.42); }
.login-card .btn-primary:active { transform: translateY(0); }

.login-footer {
	margin-top: 30px;
	padding-top: 20px;
	border-top: 1px solid rgba(0,0,0,0.07);
	text-align: center;
}
.login-footer .versionline {
	font-size: 11px;
	color: #8a96a3;
	line-height: 1.55;
	margin: 0 0 12px;
	letter-spacing: 0.02em;
}
.login-footer .versionline strong { color: #5a6573; }

.login-footer .ns-logo {
	display: inline-block;
	transition: transform .15s, filter .15s;
}
.login-footer .ns-logo svg {
	height: 32px;
	width: auto;
	display: block;
}
.login-footer .ns-logo:hover { transform: translateY(-1px); filter: brightness(1.05); }

.login-card label.sr-only { position: absolute; left: -9999px; }
