:root{
	--bg-dark:#0f0f0f;
	--bg-card:#171717;
	--accent:#00c2ff;
	--accent-dark:#008fcc;
	--text:#f0f0f0;
	--text-dim:#c0c0c0;
}
body{
	background:var(--bg-dark);
	color:var(--text);
	font-family:'Inter',-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
	scroll-behavior:smooth;
}
/* ----------  REUSABLE NAVBAR  ---------- */
.lang-scroll{
	max-height: 60vh;
	overflow-y: auto;
	padding-right: 4px;
}
.navbar{
	background:linear-gradient(90deg, rgba(13,13,13,.95) 0%, rgba(23,23,23,.95) 100%)!important;
	box-shadow:0 4px 20px rgba(0,0,0,.5);
	border-radius:0!important;
}
.navbar-brand{
	font-weight:700;
	letter-spacing:1px;
}
.nav-link{
	color:var(--text)!important;
	font-weight:500;
	transition:color .3s ease;
}
.nav-link:hover{color:var(--accent)!important;}
/* bottom animated accent line */
.navbar-bottom-light{
	position:absolute;
	bottom:0;
	left:0;
	right:0;
	height:2px;
	background:linear-gradient(90deg, transparent, var(--accent), transparent);
	opacity:0;
	transition:opacity .3s ease;
}
.navbar.scrolled .navbar-bottom-light{opacity:1;}
/* logo square */
.logo{
	width:32px;
	height:32px;
	margin-right:10px;
	display:inline-flex;
	align-items:center;
	justify-content:center;
}
/* language selector (desktop) */
.language-selector .dropdown-menu{
	background:var(--bg-card);
	border:1px solid rgba(255,255,255,.12);
	min-width:180px;
}
.language-selector .dropdown-item{
	color:var(--text);
	display:flex;
	align-items:center;
	padding:.5rem 1rem;
}
.language-selector .dropdown-item:hover{
	background:rgba(255,255,255,.08);
}
.language-selector .flag{
	width:20px;
	height:15px;
	margin-right:10px;
	border-radius:2px;
}
/* ----------  REUSABLE FOOTER  ---------- */
footer{background:#0a0a0a;font-size:.9rem;}
/* ----------  GENERIC HELPERS  ---------- */
.glass{
	background:rgba(23,23,23,.65);
	backdrop-filter:blur(10px);
	border:1px solid rgba(255,255,255,.08);
	border-radius:16px;
}
a{text-decoration:none;color:var(--accent);}
a:hover{text-decoration:underline;}
.text-muted{color:var(--text-dim)!important;}
small{color:var(--text-dim)!important;}
/* ----------  BOOTSTRAP OVERRIDES  ---------- */
.btn-primary{
	background:var(--accent);
	border:0;
	color:#000;
	font-weight:600;
	padding:.6rem 1.4rem;
	border-radius:8px;
	transition:background .3s ease;
}
.btn-primary:hover{background:var(--accent-dark);}
.form-control,.form-select{
	background:rgba(255,255,255,.06);
	border:1px solid rgba(255,255,255,.12);
	color:var(--text);
}
.form-control:focus,.form-select:focus{
	background:rgba(255,255,255,.09);
	border-color:var(--accent);
	box-shadow:0 0 0 .2rem rgba(0,194,255,.35);
	color:var(--text);
}
/* ----------  MOBILE-ONLY NAVBAR CENTRING  ---------- */
@media (max-width: 991px){
	/* kill toggler outline */
	.navbar-toggler:focus,
	.navbar-toggler:active{
		outline:none !important;
		box-shadow:none !important;
	}
	/* centre navbar items (except brand) */
	.navbar-nav,
	.language-selector{
		width:100%;
		text-align:center;
	}
	.navbar-nav .nav-item,
	.language-selector .dropdown{
		display:block;              /* keep label above menu */
	}
	/* language dropdown inside mobile panel */
	.language-selector .dropdown-menu{
		position:static !important;
		transform:none !important;
		border:none;
		background:rgba(35,35,35); /* soft grouped background */
		box-shadow:none;
		text-align:center;
		margin-top:.5rem;
		padding:0;
		border-radius:15px;
	}
	.language-selector .dropdown-item{justify-content:center;padding:.6rem 0;}
}
