body {
	font-family: 'Segoe UI', sans-serif;
	background-color: #f8fafc;
}
.gradient-header {
	/*background: linear-gradient(90deg, #1CA64C, #FFD700, #D72638);*/
	background: linear-gradient(90deg, #ffe600 0%, #ff7a00 60%);
}
.menu {
	background-color: #004D1A;
}
.menu a {
	display: block;
	color: white;
	padding: 10px 16px;
	border-radius: 6px;
	transition: 0.2s;
}
.pmenu a {
	padding: 6px 10px!important;
}
.menu a:hover {
	background-color: #1CA64C;
}
.sub-title{
	display: block;
	font-size: 14px;
	margin-top: -4px;
	text-transform: none;
	font-weight: 400;
}
.ptitle{
	color: #2a7949;
}
.gradient-overlay {
	background: linear-gradient(90deg, #1CA64C, #FFD700, #D72638);
	/*background: linear-gradient(90deg, #ffe600 0%, #ff7a00 60%);*/
}


/* Sidebar base */
#sidebarMenu{
	position: fixed; left:0; top:0; bottom:0; width:260px;
	background:#064e3b; color:#fff; z-index:50; padding:16px;
	transform: translateX(-100%);
	transition: transform .4s ease-in-out; /* ✅ transition fluide */
}
#sidebarMenu.open{ transform: translateX(0); } /* ✅ slide-in */
#sidebarMenu .nav-link{ display:block; color:#fff; padding:10px 14px; border-radius:8px; text-decoration:none; }
#sidebarMenu .nav-link:hover{ background: rgba(255,255,255,.12); }

/* Desktop layout: show sidebar, reserve space */
@media (min-width: 768px){
	#sidebarMenu{ position: static; transform:none; width:260px; }
	.with-sidebar{ margin-left:260px; } /* content pushed when desktop */
}

/* Overlay semi-transparent (mobile) */
#overlay{
	position:fixed; inset:0; background:rgba(0,0,0,.45);
	z-index:40; display:none; backdrop-filter: blur(2px);
}
#overlay.show{ display:block; }

/** Login */
.shake {
	animation: shake 0.3s ease-in-out;
}
@keyframes shake {
	0%, 100% { transform: translateX(0); }
	25% { transform: translateX(-3px); }
	50% { transform: translateX(3px); }
	75% { transform: translateX(-3px); }
}

/** Redefinition */
div:where(.swal2-container).swal2-backdrop-show, div:where(.swal2-container).swal2-noanimation {
    background: rgb(34 98 71 / 99%)!important;
}
div:where(.swal2-container) button:where(.swal2-styled):where(.swal2-confirm) {
    background-color: #7be066!important;
}
div:where(.swal2-icon).swal2-warning {
    border-color: rgb(223 109 109);
    color: rgb(223 109 109);
}