:root{--brand-bg:#FFFFFF;--brand-fg:#010275;--brand-accent:#313290;--brand-muted:#9798C8;--brand-danger:#FF0000;--radius:12px;--shadow:0 6px 24px rgba(0,0,0,.06);--input-bg:#f3f4f6;--input-fg:#010275;--input-border:#e5e7eb}
@media (prefers-color-scheme: dark){:root{--brand-bg:#010275;--brand-fg:#FFFFFF;--input-bg:#313290;--input-fg:#FFFFFF;--input-border:#9798C8}}
[data-bs-theme="light"]{--brand-bg:#FFFFFF;--brand-fg:#010275;--input-bg:#f3f4f6;--input-fg:#010275;--input-border:#e5e7eb}
[data-bs-theme="dark"]{--brand-bg:#010275;--brand-fg:#FFFFFF;--input-bg:#313290;--input-fg:#FFFFFF;--input-border:#9798C8}
body{background:var(--brand-bg);color:var(--brand-fg)}

/* CRITICAL Z-INDEX FIX - Navbar always on top */
.navbar-modern{
	background:var(--brand-bg);
	box-shadow:var(--shadow);
	backdrop-filter:saturate(180%) blur(6px);
	position:sticky !important;
	top:0;
	z-index:9999 !important;
}

/* Ensure navbar stays on top when using sticky-top class */
.navbar-modern.sticky-top,
.navbar.sticky-top {
	z-index:9999 !important;
	position:sticky !important;
	top:0;
}

/* Fixed-top variant */
.navbar-modern.fixed-top,
.navbar.navbar-fixed-top {
	position:fixed !important;
	z-index:9999 !important;
	top:0;
	left:0;
	right:0;
}

.navbar-grid{display:grid;grid-template-columns:auto 1fr auto auto;align-items:center;gap:.75rem;width:100%}
.brand-logo{height:50px;width:50px;display:inline-flex}
.brand-logo img{height:100%;width:80%;object-fit:cover;display:block}
.search-wrap{min-width:0;flex:1 1 320px;max-width:100%}
.search-group{position:relative}
.search-input{width:340px;max-width:100%;transition:width .25s ease, box-shadow .2s ease;background:var(--input-bg);color:var(--input-fg);border:1px solid var(--input-border);border-radius:12px;padding:.6rem .9rem .6rem 2.35rem;line-height:1.25}
.search-input:focus{width:100%;outline:none;border-color:var(--brand-accent);box-shadow:0 0 0 .18rem rgba(49,50,144,.22);background:var(--input-bg);color:var(--input-fg)}
.search-icon{position:absolute;left:.65rem;top:50%;transform:translateY(-50%);opacity:.7}
.center-zone{display:flex;align-items:center;gap:.75rem;min-width:0}
.primary-links{display:flex;gap:.25rem;flex-wrap:nowrap}
.primary-links .nav-link{padding:.5rem .75rem;border-radius:12px;color:var(--brand-fg);font-weight:600}
.primary-links .nav-link:hover{background:rgba(49,50,144,.12)}

/* Dropdown menu z-index to be above content but below modals */
.dropdown-menu{
	--bs-dropdown-link-active-bg:rgba(49,50,144,.15);
	z-index:10001 !important;
}

.right-actions{display:flex;align-items:center;gap:.45rem;white-space:nowrap}
.icon-btn{position:relative;border:1px solid var(--input-border);background:var(--brand-bg);color:var(--brand-fg);border-radius:999px;padding:.48rem .6rem;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}
.icon-btn:hover{background:rgba(49,50,144,.10)}
.notif{position:absolute;top:-2px;right:-2px;background:#FF0000;color:#fff;min-width:18px;height:18px;padding:0 5px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;font-size:.7rem;font-weight:700;line-height:1}
.hamburger{width:20px;height:20px;display:inline-block;position:relative}
.hamburger span{position:absolute;left:2px;right:2px;height:2px;background:currentColor;border-radius:2px;transition:transform .2s ease,opacity .2s ease}
.hamburger span:nth-child(1){top:5px}
.hamburger span:nth-child(2){top:9px}
.hamburger span:nth-child(3){top:13px}
@media (max-width:991.98px){.primary-links{display:none}.search-wrap{flex:1 1 auto}}

/* Offcanvas z-index hierarchy */
.offcanvas-modern {
	z-index:9997 !important;
}
.offcanvas-backdrop {
	z-index:9996 !important;
}

.offcanvas-modern .nav-link{color:var(--brand-fg);padding:.75rem 1rem;border-radius:12px}
.offcanvas-modern .nav-link:hover{background:rgba(49,50,144,.12)}
.theme-row{display:flex;gap:.4rem;padding:.25rem .5rem}
.theme-chip{flex:1;border:1px solid var(--input-border);background:var(--brand-bg);color:var(--brand-fg);border-radius:999px;padding:.35rem .6rem;font-size:.9rem}
.theme-chip.active{border-color:var(--brand-accent);box-shadow:0 0 0 .15rem rgba(49,50,144,.18)}

/* Z-INDEX HIERARCHY FOR OTHER ELEMENTS */
/* Sidebar and sticky elements */
.side-menu-wrapper {
	position:relative;
	z-index:1010;
}

.side-menu-wrapper .sticky-top {
	z-index:1010;
	top:70px !important; /* Offset by navbar height */
}

/* Other sticky elements (not navbar) */
.sticky-top:not(.navbar):not(.navbar-modern) {
	z-index:1020;
}

/* Modals */
.modal {
	z-index:10000 !important;
}
.modal-backdrop {
	z-index:9998 !important;
}

/* Responsive - sidebar becomes relative on mobile */
@media (max-width:1199px) {
	.side-menu-wrapper .sticky-top {
		position:relative !important;
		top:auto !important;
		z-index:auto;
	}
}

/* 
 * Z-INDEX HIERARCHY SUMMARY:
 * 1      - Normal content
 * 1010   - Sidebar
 * 1020   - Other sticky elements
 * 9996   - Offcanvas backdrop
 * 9997   - Offcanvas menu
 * 9998   - Modal backdrop
 * 9999   - NAVBAR (always on top)
 * 10000  - Modals
 * 10001  - Dropdown menus
 */