/* ============================================================
   app.css – Responsive Layout
   ============================================================ */

/* --- Base --- */
body {
	overflow: hidden;
}

header {
	background-color: #c8c9ca;
}

footer a {
	color: #FC861D !important;
}

#main {
}

/* --- Desktop User Menu (hover) --- */
#useractions {
	display: none;
}

#usercontext {
    display: block;
}

#usercontext:hover #useractions {
    display: table;
}

/* --- Mobile Offcanvas User Menu --- */
.usermenu-overlay {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: rgba(0,0,0,0.4);
	z-index: 1040;
}

.usermenu-overlay.open {
	display: block;
}

.usermenu-drawer {
	position: fixed;
	top: 0;
	right: -280px;
	width: 280px;
	height: 100%;
	background: #fff;
	z-index: 1050;
	transition: right 0.25s ease;
	overflow-y: auto;
	box-shadow: -2px 0 8px rgba(0,0,0,0.15);
}

.usermenu-drawer.open {
	right: 0;
}

.usermenu-drawer a:hover {
	background-color: #f0f0f0;
	border-radius: 4px;
}

/* --- Mobile Sidebar Backdrop --- */
#sidebar_backdrop {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: rgba(0,0,0,0.4);
	z-index: 1029;
}

#sidebar_backdrop.open {
	display: block;
}

/* --- Notifications --- */
#cover_error {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	display: none;
	z-index: 10;
}

#cover_success {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	display: none;
	z-index: 10;
}

#error {
	position: absolute;
	right: 0;
	text-align: center;
	padding: .9em;
	background-color: lightpink;
	width: fit-content;
	max-width: 90vw;
}

#errortext {
	line-height: 1.5em;
	color: darkred;
}

#success {
	position: absolute;
	right: 0;
	text-align: center;
	padding: .9em;
	background-color: palegreen;
	width: fit-content;
	max-width: 90vw;
}

#successtext {
	line-height: 1.5em;
	color: darkgreen;
}

.ui-tooltip {
	box-shadow: none !important;
}

/* ============================================================
   Responsive: Mobile (< 768px)
   ============================================================ */
@media (max-width: 767.98px) {
	body {
		overflow: auto;
		overflow-x: hidden;
	}

	header {
		position: sticky;
		top: 0;
		z-index: 1020;
	}

	#main {
		overflow: visible !important;
		height: auto !important;
	}

	/* Footer auf Mobile ausblenden (per d-none d-md-block im Template) */
}

/* Desktop (>= 768px) */
@media (min-width: 768px) {
	/* Sidebar-Toggle-Button auf Desktop verstecken */
	.sidebar-toggle-btn {
		display: none !important;
	}
}
