/* ================= THEME SYSTEM ================= */

/* DEFAULT (ORANGE THEME) */
:root {
	--primary: #0F5757;
    --primary-dark: #064545;
    --secondary: #2D8686;
    --footer: #0F5757;
    --bg: #F2F9F9;
    --bg-color: #222;
    --card: #FFFFFF;
    --text: #163535;
    --primary-30: #0F57574D;
    --nav-bg: linear-gradient(90deg, #0F5757, #064545);
    --header-bg: #0F5757;
    /* Charts - Green Government Theme */
    --chart1: #0F5757;
    --chart2: #2D8686;
    --chart3: #75BDBD;
    --chart4: #5279D7;
    --chart5: #214AAB;
    --chart6: #A32966;
    --chart7: #916100;
    --chart8: #A72626;
}
/*orange theme*/
 body.orang-theme{
 	--primary: #c56b2f; /*#ff7a18;*/
	--primary-dark: #A44E00;
	--secondary: #cb844f; /*#1f5ab2;*/
	--footer: #8e4f11;
	--bg: #fff7f0;
	--bg-color: #222;
	--card: #ffffff;
	--text: #222;
	--primary-30: #c56b2f4D;
	--nav-bg: linear-gradient(90deg, #c56b2f, #e77419);
	--header-bg: #ffffff;
	--chart1: #F28C28;
	--chart2: #D95F02;
	--chart3: #FFB15C;
	--chart4: #C94C08;
	--chart5: #E76F51;
	--chart6: #B94E08;
	--chart7: #FF9F1C; 
	--chart8: #D97706;
 }

/* BLUE THEME */
body.blue-theme {
	--primary: #1f5ab2;
	--primary-dark: #163d7a;
	--secondary: #4c7ea7;
	--footer: #5b687c;
	--bg: #f4f7fb;
	--bg-color: #222;
	--card: #ffffff;
	--text: #222;
	--primary-30: #1f5ab24D;
	--nav-bg: linear-gradient(90deg, #1f5ab2, #2f6fa5);
	--header-bg: #ffffff;
	--chart1: #2563EB;
	--chart2: #1D4ED8;
	--chart3: #60A5FA;
	--chart4: #1E40AF;
	
	--chart5: #3B82F6;
	--chart6: #1E3A8A;
	--chart7: #93C5FD;
	--chart8: #0369A1;
	
}
/* Green THEME */
body.green-theme {
	--primary: #0F5757;
    --primary-dark: #064545;
    --secondary: #2D8686;
    --footer: #0F5757;
    --bg: #F2F9F9;
    --bg-color: #222;
    --card: #FFFFFF;
    --text: #163535;
    --primary-30: #0F57574D;
    --nav-bg: linear-gradient(90deg, #0F5757, #064545);
    --header-bg: #0F5757;
    /* Charts - Green Government Theme */
    --chart1: #0F5757;
    --chart2: #2D8686;
    --chart3: #75BDBD;
    --chart4: #5279D7;
    --chart5: #214AAB;
    --chart6: #A32966;
    --chart7: #916100;
    --chart8: #A72626;
	
}
/* DARK THEME */
body.dark-theme {
	--primary: #38bdf8;
	--primary-dark: #0ea5e9;
	--secondary: #38bdf8;
	--footer: #0ea5e9;
	--bg: #020617;
	--bg-color: #f2f2f2;
	--card: #1e293b;
	--text: #e5e7eb;
	--primary-30: #38bdf84D;
	--nav-bg: linear-gradient(90deg, #020617, #0f172a);
	--header-bg: #020617;
	--chart1: #2563EB;
		--chart2: #1D4ED8;
		--chart3: #60A5FA;
		--chart4: #1E40AF;		
		--chart5: #3B82F6;
		--chart6: #1E3A8A;
		--chart7: #93C5FD;
		--chart8: #0369A1;
}

/* ================= GLOBAL ================= */
/* html, body {
	background: var(--bg);
	color: var(--text);
	font-family: "Noto Sans Devanagari", "Noto Sans", sans-serif !important;
	margin: 0;
	padding: 0;
	width: 100%;
	overflow-x: hidden;
} */
html,
body {
    background: var(--bg);
    color: var(--text);
    font-family: "Noto Sans", "Noto Sans Devanagari", sans-serif !important;
    margin: 0;
    padding: 0;
    width: 100%;
    overflow-x: hidden;
}

a {
	color: var(--primary-dark) !important;
	text-decoration: none !important;
}

a:hover {
	color: var(--primary) !important;
}

/* ================= HEADER ================= */
.top-header {
	background: var(--header-bg);
	border-bottom: 3px solid var(--primary);
}

.gov-header {
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
}

.gov-left {
	display: flex;
	align-items: center;
	gap: 8px;
	white-space: nowrap;
}

.gov-header {
	display: flex;
	justify-content: space-between;
	padding: 6px 20px;
	background: linear-gradient(90deg, #222, var(--primary-dark));
	color: #fff;
}

.gov-left {
	display: flex;
	align-items: center;
	gap: 8px;
	white-space: nowrap;
}

.gov-header {
	display: flex;
	justify-content: space-between;
	padding: 6px 20px;
	background: linear-gradient(90deg, #222, var(--primary-dark));
	color: #fff;
}

.gov-right button, .gov-right i {
	background: none;
	border: none;
	color: #fff;
	cursor: pointer;
}

.gov-right button:hover {
	color: var(--accent);
}

.gov-right {
	display: flex;
	align-items: center;
	gap: 10px;
	flex-wrap: wrap;
	justify-content: flex-end;
}

/* ================= HEADER ================= */
/* ================= HEADER FULL DESIGN ================= */
.top-header {
	position: relative;
	overflow: hidden;
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 14px 30px;
	/* Your background image */
	background: url('../images/bg-header.png') no-repeat right center;
	background-size: cover;
}

.header-left, .header-right {
	position: relative;
	z-index: 2;
}

/* FADE OVERLAY (VERY IMPORTANT) */
.top-header::before {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(90deg, #ffffff 0%, #f4f7fb 40%, var(--bg) 70%, var(--primary-dark) 100% z-index:1 );
	border-bottom: 3px solid var(--bg);
}

/* 👇 RIGHT SIDE DESIGN ELEMENT (fills empty space) */
.top-header::after {
	content: "";
	position: absolute;
	right: -100px;
	top: -50px;
	width: 400px;
	height: 200px;
	background: radial-gradient(circle, rgba(255, 122, 24, 0.25),
		transparent 70%);
	transform: rotate(20deg);
}

/* LEFT */
.header-left {
	display: flex;
	align-items: center;
	gap: 14px;
	z-index: 2;
}

.nic-logo {
	height: 70px;
}

/* TEXT */
.heading-CEA {
	font-size: 30px;
	font-weight: 700;
	color: var(--primary);
}

.header-left h4 {
	margin: 0;
	font-size: 14px;
	color: #333;
}

/* RIGHT SIDE */
.header-right {
	display: flex;
	align-items: center;
	z-index: 2;
}

/* SEARCH BOX */
.search-box {
	z-index: 6;
    position: absolute;
    left: 42%;
}

/* INPUT */
.search-box input {
	padding: 10px 42px 10px 14px;
	border-radius: 25px;
	border: 1px solid var(--primary);
	width: 300px;
	background: #fff;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
	transition: 0.3s;
}

/* FOCUS EFFECT */
.search-box input:focus {
	outline: none;
	border-color: var(--primary);
	box-shadow: 0 0 10px rgba(255, 122, 24, 0.3);
}

select {
	border: 1px solid var(--primary);
	padding: 2px;
	border-radius: 10px;
}

select:focus {
	outline: none;
	border-color: var(--primary-dark);
	box-shadow: 0 0 10px rgba(255, 122, 24, 0.3);
}

/* ICON */
.search-icon {
	position: absolute;
	right: 5px;
	top: 50%;
	transform: translateY(-50%);
	background: var(--primary);
	color: #fff;
	width: 34px;
	height: 34px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
}

/* HOVER */
.search-icon:hover {
	background: #e36400;
}

/* RESPONSIVE */
@media ( max-width : 768px) {
	.top-header {
		flex-direction: column;
		text-align: center;
		gap: 10px;
	}
	.search-box input {
		width: 100%;
	}
}

/* Prevent buttons breaking */
.gov-right button, .gov-right span, .gov-right select {
	white-space: nowrap;
}

.gov-header .divider {
	width: 1px;
	height: 16px;
	background: #fff;
	opacity: 0.5;
}
/* ================= NAVBAR ================= */
.nav2 {
	background: var(--nav-bg);
	/*border-bottom:3px solid var(--primary);*/
	box-shadow: 0 6px 8px rgba(0, 0, 0, 0.35), inset 0 1px 0
		rgba(255, 255, 255, 0.4);
}

.nav2 .nav-link {
	color: #fff !important;;
	padding: 12px 18px;
	border-radius: 8px;
	font-size: 90%;
	font-weight: 600;
	position: relative;
	transition: all 0.35s ease;
	transform-style: preserve-3d;
}
.nav-item{padding-left:0px; padding-right:10px;}

.nav2 .nav-link:hover, .nav2 .nav-item .active {
	background: var(--secondary);
	background: linear-gradient(to bottom, rgba(255, 255, 255, 0.35),
		rgba(255, 255, 255, 0.15));
	transform: translateY(-3px) rotateX(6deg);
	box-shadow: 0 8px 18px rgba(0, 0, 0, 0.35), inset 0 1px 0
		rgba(255, 255, 255, 0.4);
}

/* ================= DROPDOWN (FIXED LIKE YOUR OLD WORKING) ================= */
.nav2 .dropdown {
	position: relative;
}

/* MAIN DROPDOWN */
.nav2 .dropdown-menu {
	display: none;
	position: absolute;
	top: 100%;
	left: 0;
	padding: 8px 0;
	min-width: 310px;
	background: #fff;
	border-radius: 6px;
	z-index: 9999;
	overflow: visible; /* IMPORTANT FIX */
}

/* SHOW */
.nav2 .dropdown:hover>.dropdown-menu {
	display: block;
}

/* ITEMS */
.nav2 .dropdown-item {
	color: #333;
	padding: 10px 15px;
	white-space: wrap;
	font-weight: 600;
}

.nav2 .dropdown-item:hover {
	background: var(--primary);
	color: #fff;
}

/* SUB DROPDOWN (NO OVERLAP FIX) */
.dropdown-submenu {
	position: relative;
}

/* THIS IS THE REAL FIX */
.dropdown-submenu>.dropdown-menu {
	top: 0;
	left: 100%;
	margin-left: 2px;
	display: none;
	position: absolute;
}

/* SHOW SUBMENU */
.dropdown-submenu:hover>.dropdown-menu {
	display: block;
}

/* PREVENT CUT */
.nav2, .navbar, .dropdown {
	overflow: visible !important;
}

.hover-dropdown:hover>.dropdown-menu {
	display: block;
}
/* Remove Bootstrap default arrow */
.dropend>.dropdown-toggle::after {
	border: none;
	content: "▶";
	float: right;
	transition: transform 0.3s ease;
}

.hover-dropdown {
	position: relative;
}
/* Sub dropdown ko right side SAME ROW me open karao */
.hover-dropdown>.dropdown-menu {
	top: 0;
	left: 100%;
	margin-left: 0;
}

/* Hover par arrow down ho jaye */
.hover-dropdown:hover>.dropdown-toggle::after {
	transform: rotate(90deg);
}

/* ================= CONTENT PAGE (YOUR MAIN CSS FIXED) ================= */

/* TITLE */
.main-title {
	font-size: 36px;
	font-weight: 700;
	text-align: center;
	color: var(--primary);
	margin: 30px 0;
}

.chief-engineer {
	background-color: var(--bg);
	padding: 10px 15px;
	border-left: 4px solid var(--secondary);
	margin-bottom: 20px;
}

.main-title::after {
	content: "";
	width: 70px;
	height: 4px;
	background: var(--secondary);
	display: block;
	margin: 10px auto;
}

/* SECTION */
/*.section-header{
  background:linear-gradient(90deg,var(--primary),var(--primary-dark));
  color:#fff;
  padding:12px;
  border-radius:6px 6px 0 0;
}*/
.section-header {
	background-color: var(--primary-dark);
	color: #ffffff;
	padding: 10px 15px;
	font-weight: 600;
	border-radius: 5px 5px 0 0;
	border-left: 6px var(--secondary) solid;
}

.section-body {
	background: var(--card);
	padding: 18px;
	border-radius: 0 0 8px 8px;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
	/*    background: 
        linear-gradient(rgba(255,255,255,0.85), rgba(255,255,255,0.85)),
        url('../images/bg-light.jpg');
 */
	background-size: cover;
	background-position: right;
}

body.dark-theme .section-body {
	background: linear-gradient(rgba(0, 0, 0, 0.7), rgba(0, 0, 0, 0.7)),
		url('../images/bg-light.jpg') center/cover no-repeat !important;
}
/* LIST */
.list-group-item {
	background: var(--bg);
	border-left: 4px solid var(--primary);
	margin-bottom: 8px;
	color: var(--bg-color);
}

/* .list-group-item:hover{
  background:var(--secondary);
  color:#fff;
} */

/* INFO BOX */
.info-box {
	background: linear-gradient(135deg, var(--primary), var(--primary-dark));
	color: #fff;
	padding: 18px;
	border-radius: 8px;
}

/* CARD */
.content-card {
	background: var(--card);
	padding: 20px;
	border-radius: 10px;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
}

/* ================= FOOTER THEME SUPPORT ================= */
.gov-footer {
	background: var(--footer); /* var(--primary-dark);*/
	color: #fff;
	margin-top: 40px;
	padding-top: 10px;
}

.gov-footer-3d {
	background: linear-gradient(135deg, #0f2c4f, var(--footer));
	color: #fff;
	margin-top: 40px;
}

.footer-glass {
	padding: 30px;
}

.footer-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
	gap: 20px;
}

.footer-card {
	background: rgba(255, 255, 255, 0.05);
	padding: 20px;
	border-radius: 12px;
	transition: 0.3s;
}

.footer-card:hover {
	transform: translateY(-5px);
}

.footer-card a {
	display: block;
	color: #ddd;
	margin: 5px 0;
	text-decoration: none;
}

.gov-footer a, .footer-card a, .ticker-wrapper a {
	color: #ddd !important;
	text-decoration: none;
	margin: 10px 10px;
}

.footer-card a:hover, .gov-footer a:hover, .dropdown-menu li a:hover,
	.ticker-wrapper  a:hover {
	color: #fff !important;
}

.footer-logo {
	width: 60px;
	filter: invert(1);
}

.footer-bar {
	background: var(--footer);
	padding: 10px;
	text-align: center;
	font-size: 13px;
}

.gov-footer-3d {
	background: linear-gradient(135deg, var(--primary-dark), var(--primary));
}

/* ================= RESPONSIVE ================= */
@media ( max-width :768px) {
	.dropdown-submenu>.dropdown-menu {
		left: 0;
		top: 100%;
	}
}

.theme-switcher {
	display: flex;
	gap: 10px;
	align-items: center;
}

/* Common dot style */
.theme-dot {
	width: 16px;
	height: 16px;
	border-radius: 50%;
	cursor: pointer;
	display: inline-block;
	border: 2px solid #ccc;
	transition: all 0.3s ease;
}

/* Colors */
.theme-dot.orange {
	background: #ff7a18;
}

.theme-dot.blue {
	background: #1f5ab2;
}

.theme-dot.dark {
	background: #222;
}

/* Hover effect */
.theme-dot:hover {
	transform: scale(1.2);
	border-color: #000;
}

/* Active theme highlight (optional) */
.theme-dot.active {
	box-shadow: 0 0 0 3px rgba(0, 0, 0, 0.2);
}

.theme-dot.orange {
	background: linear-gradient(45deg, #ff7a18, #ffb347);
}

.theme-dot.blue {
	background: linear-gradient(45deg, #1f5ab2, #4facfe);
}

.theme-dot.dark {
	background: linear-gradient(45deg, #111, #444);
}

.theme-dot.active::after {
	content: "✔";
	color: #fff;
	font-size: 10px;
	display: block;
	text-align: center;
	line-height: 16px;
}

/* home page */
@keyframes scroll-left { 0% {
	transform: translateX(100%);
}
100%
{
transform:translateX(-100%);
}
}

/* Ministers Images */
.ministers-img {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 30px;
	margin-top: 30px;
	flex-wrap: wrap;
	text-align: center;
}

/* Card */
.ministers-img div {
	position: relative;
	background: var(--bg);
	padding: 20px;
	border-radius: 16px;
	box-shadow: 0 8px 18px rgba(0, 0, 0, 0.12);
	transition: transform 0.9s ease, box-shadow 0.9s ease;
	transform-style: preserve-3d;
	overflow: hidden;
	color: var(--text); /* default text */
}

.ministers-img div::before {
	content: "";
	position: absolute;
	inset: -120%;
	background: linear-gradient(to bottom, var(--primary-dark),
		var(--primary));
	box-shadow: inset 0 1px 0 var(--primary), inset 0 -2px 6px
		var(--primary-dark);
	transform: translateY(120%) rotate(30deg);
	transition: transform 7.1s cubic-bezier(0.22, 1, 0.36, 1);
	z-index: 0;
}
/* Image */
.ministers-img img {
	width: 180px;
	height: 180px;
	object-fit: cover;
	border-radius: 50%;
	position: relative;
	z-index: 1;
	transition: transform 5.1s ease, box-shadow 1.9s ease, border-color 1.9s
		ease;
	border: 4px solid #e6eef8;
}

/* TEXT inside card */
.ministers-img div * {
	position: relative;
	z-index: 1;
	transition: color 4.9s ease;
}

/* Hover 3D */
.ministers-img div:hover {
	transform: translateY(-12px) rotateX(7deg);
	box-shadow: 0 22px 45px rgba(0, 0, 0, 0.35);
}

/* Flow animation */
.ministers-img div:hover::before {
	transform: translateY(0) rotate(0deg);
}

/* Text color change */
.ministers-img div:hover {
	color: #ffffff;
}

/* Image hover */
.ministers-img div:hover img {
	transform: translateY(-8px) scale(1.06);
	border-color: rgba(255, 255, 255, 0.9);
	box-shadow: 0 14px 30px rgba(0, 0, 0, 0.4);
}

.ministers-img {
	height: auto; /* set your desired height */
	scroll-behavior: smooth; /* smooth manual scrolling */
}

.ministers-img p {
	font-size: 90%;
}

.ministers-img .h3 {
	font-size: 115%;
}

.row1 {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 20px;
	flex-wrap: wrap;
	padding: 10px;
	/* background: #ffffff;*/
	border-radius: 6px;
	margin: 10px;
	/*border: 2px #92acc7 solid;*/
}

.row1 a {
	flex: 1; /* makes all items equal width */
	text-align: center;
}

.row1 img {
	height: 80px; /* 🔥 fixed height (change as needed) */
	width: auto; /* keeps aspect ratio */
	object-fit: contain; /* prevents distortion */
	border: 1px var(--secondary) solid;
	padding: 4px;
	box-shadow: 2px 4px 2px rgba(0, 0, 0, 0.3);
}

.ministers-img img {
	width: 105px;
	height: 105px;
}

.ministers-img div {
	position: relative;
	background: #ffffff;
	padding: 8px;
	border-radius: 6px;
	width: 100%;
}

.ministers-img {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 15px;
	margin-top: 20px;
}

.carousel-3d img {
	width: 100%;
	height: 440px;
}

.carousel-3d {
	height: 430px;
	margin: 12px auto;
}

.hit-box {
	margin-top: 15px;
	display: flex;
	align-items: center;
	gap: 10px;
}

.digits b {
	background: #000;
	padding: 4px 8px;
	border-radius: 4px;
	box-shadow: inset 0 0 5px #0ff, 0 0 6px #0ff;
	margin: 0 2px;
}

.social {
	margin-top: 15px;
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.x-btn {
	width: 42px;
	height: 42px;
	background: #000;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: bold;
	box-shadow: 0 0 12px #00b7ff;
	cursor: pointer;
}

/* ================= FLOATING PANEL (NEW LOOK) ================= */
.floating-panel {
	color: #e5e7eb; /* light text */
	border-radius: 26px;
	padding: 30px;
	position: relative;
	box-shadow: 0 40px 80px rgba(15, 23, 42, 0.75), inset 0 1px 1px
		rgba(255, 255, 255, 0.08), inset 0 -12px 30px rgba(0, 0, 0, 0.6);
}

/* ================= TITLES ================= */
.panel-title {
	font-size: 18px;
	font-weight: 700;
	letter-spacing: 0.4px;
	margin-bottom: 26px;
}

.panel-title span {
	display: block;
	margin-top: 6px;
	font-size: 14px;
	font-weight: 500;
	color: #fff;
}

/* ================= METRICS SCROLL ================= */
.metrics-scroll {
	overflow: hidden;
	margin-top: 20px;
}

.metrics-track {
	display: flex;
	gap: 22px;
	animation: scrollX 30s linear infinite;
}

.metrics-scroll:hover .metrics-track {
	animation-play-state: paused;
}

/* ================= METRIC TILE (3D) ================= */
.metric-tile {
	min-width: 230px;
	padding: 22px;
	border-radius: 20px;
	background: linear-gradient(145deg, #ffffff, #eef2f7);
	box-shadow: 0 14px 35px rgba(0, 0, 0, 0.14), inset 0 1px 0
		rgba(255, 255, 255, 0.9);
	transition: all 0.35s ease;
	text-align: left;
}

.metric-tile:hover {
	transform: translateY(-12px) scale(1.04);
	box-shadow: 0 30px 60px rgba(0, 0, 0, 0.2);
}

.metric-tile i {
	font-size: 26px;
	margin-bottom: 10px;
}

.metric-tile h6 {
	font-size: 14px;
	font-weight: 600;
	margin: 6px 0;
	color: #4b5563;
}

.metric-tile strong {
	font-size: 20px;
	font-weight: 800;
	color: #111827;
}

/* ================= METRIC COLORS ================= */
.blue {
	border-left: 6px solid #4f9cf9;
}

.green {
	border-left: 6px solid #22c55e;
}

.purple {
	border-left: 6px solid #8b5cf6;
}

.orange {
	border-left: 6px solid #f59e0b;
}

.teal {
	border-left: 6px solid #14b8a6;
}

/* ================= ACTION RIBBON ================= */
.action-ribbon {
	display: flex;
	gap: 18px;
	padding: 18px;
	background: linear-gradient(145deg, #ffffff, #f4f7fb);
	border-radius: 22px;
	box-shadow: 0 18px 40px rgba(0, 0, 0, 0.1);
}

.ribbon-item {
	flex: 1;
	padding: 16px 14px;
	border-radius: 16px;
	background: linear-gradient(145deg, var(--bg2), var(--primary-dark));
	text-align: center;
	font-size: 14px;
	font-weight: 600;
	cursor: pointer;
	transition: all 0.35s ease;
}

.enblem1 {
	filter: invert(33%) sepia(98%) saturate(2800%) hue-rotate(200deg)
		brightness(95%) contrast(95%);
}

.ribbon-item img {
	height: 28px;
	margin-bottom: 6px;
}

.ribbon-item:hover {
	transform: translateY(-6px);
	box-shadow: 0 18px 36px rgba(0, 0, 0, 0.18);
}

.ribbon-item.highlight {
	background: linear-gradient(135deg, var(--bg2), var(--primary));
	font-weight: 700;
}

/* ================= STORY CARDS ================= */
.story-card {
	background: linear-gradient(145deg, #ffffff, #f4f7fb);
	border-radius: 22px;
	padding: 22px;
	height: 100%;
	box-shadow: 0 16px 34px rgba(0, 0, 0, 0.12);
	transition: all 0.35s ease;
}

.story-card:hover {
	transform: translateY(-6px);
	box-shadow: 0 26px 50px rgba(0, 0, 0, 0.18);
}

.story-card.center {
	text-align: center;
}

.story-card h6 {
	font-size: 15px;
	font-weight: 700;
	margin-bottom: 12px;
}

.small-label {
	font-size: 12px;
	letter-spacing: 0.4px;
	color: #6b7280;
}

.muted-text {
	font-size: 14px;
	color: #4b5563;
}

/* ================= WHAT'S NEW PANEL ================= */

/* ================= WHAT'S NEW HERO ================= */
.whatsnew-3d-card {
	background: var(--bg2);
	border-radius: 18px;
	padding: 20px 22px;
	box-shadow: 6px 6px 14px rgba(0, 0, 0, 0.08), -6px -6px 14px
		rgba(255, 255, 255, 0.9);
	transition: transform 0.4s ease, box-shadow 0.4s ease;
	border: 1px solid var(--primary);
}

.whatsnew-3d-card:hover {
	transform: translateY(-6px);
	box-shadow: 12px 12px 22px rgba(0, 0, 0, 0.12), -10px -10px 22px
		rgba(255, 255, 255, 1);
}

.whatsnew-3d-header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 14px;
	font-weight: 900;
	font-size: larger;
}

.whatsnew-3d-header .title {
	font-size: 1.1rem;
	font-weight: 700;
	color: var(--bg-color);
	letter-spacing: 0.3px;
}

.whatsnew-3d-header .badge {
	font-size: 0.75rem;
	padding: 5px 10px;
	border-radius: 20px;
	background: var(--primary);
	color: #fff;
	box-shadow: 0 4px 10px rgba(30, 136, 229, 0.35);
}

.whatsnew-3d-scroll {
	max-height: 200px;
	overflow-y: auto;
	padding-right: 6px;
}

.whatsnew-3d-scroll::-webkit-scrollbar {
	width: 6px;
}

.whatsnew-3d-scroll::-webkit-scrollbar-thumb {
	background: var(--primary2);
	border-radius: 6px;
}

.whatsnew-3d-list {
	list-style: none;
	padding: 0;
	margin: 0;
}

.whatsnew-3d-list li {
	background: var(--bg);
	border-radius: 12px;
	padding: 12px 14px;
	padding-left: 10px;
	margin-bottom: 12px;
	font-size: 0.9rem;
	font-weight: 600;
	color: var(--bg-color);
	box-shadow: 3px 3px 6px rgba(0, 0, 0, 0.06), -3px -3px 6px
		rgba(255, 255, 255, 0.9);
	transition: transform 0.25s ease, box-shadow 0.25s ease;
	border-left: 4px solid var(--primary);
}

.whatsnew-3d-list li:hover {
	transform: translateX(6px);
	box-shadow: 6px 6px 12px rgba(0, 0, 0, 0.12), -4px -4px 10px
		rgba(255, 255, 255, 1);
}
/* Auto Scroll  */
.whatsnew-3d-scroll {
	height: 180px; /* adjust as needed */
	overflow: hidden;
	position: relative;
}

.whatsnew-3d-list {
	list-style: none;
	padding: 0;
	margin: 0;
	position: absolute;
	width: 100%;
}

.whatsnew-3d-list li {
	/*padding: 10px 0;*/
	border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

/* Default scroll container */
.whatsnew-3d-scroll {
	overflow: hidden;
	position: relative;
}

/* Bigger height for What's New */
.whatsnew-tall {
	height: 280px; /* increase this if you want more */
}

/* Smaller height for Invitation of Public Comments */
.whatsnew-short {
	height: 140px; /* decrease this if you want less */
}

/* ================= ACTION RIBBON ================= */
.action-ribbon {
	background: #fff;
	border-radius: 14px;
	display: flex;
	justify-content: space-between;
	padding: 15px;
	box-shadow: 0 15px 40px rgba(0, 0, 0, 0.08);
}

.ribbon-item {
	text-align: center;
	font-size: 14px;
	color: #444;
	cursor: pointer;
}

.ribbon-item i {
	display: block;
	font-size: 22px;
	margin-bottom: 6px;
	color: var(--primary-dark);
}

.ribbon-item.highlight {
	font-weight: 600;
	color: var(--primary-dark);
}

/* ================= STORY CARDS ================= */
.story-card {
	background: #fff;
	border-radius: 16px;
	padding: 18px;
	box-shadow: 0 15px 40px rgba(0, 0, 0, 0.08);
	height: 100%;
}

/* ================= POWER PERFORMANCE (3D PRO VERSION) ================= */
.hero-panel {
	/*background: linear-gradient(145deg, var(--primary-dark), var(--primary2));*/
	background: var(--primary-dark);
	border-radius: 22px;
	padding: 18px 14px;
	color: #fff;
	text-align: center;
	box-shadow: 0 25px 60px rgba(0, 0, 0, 0.45), inset 0 1px 0
		rgba(255, 255, 255, 0.08), inset 0 -2px 8px rgba(0, 0, 0, 0.6);
	position: relative;
	overflow: hidden;
}

.hero-panel::before {
	content: "";
	position: absolute;
	inset: 0;
	background: radial-gradient(circle at top right, rgba(0, 183, 255, 0.15),
		transparent 50%);
	pointer-events: none;
}

/* Title */

/* Metric container */
.metrics-vertical {
	display: flex;
	flex-direction: column;
	gap: 14px;
}

/* 3D metric tile */
.metrics-vertical .metric-tile {
	background: linear-gradient(145deg, #ffffff, #e6ecf5);
	color: #111;
	border-radius: 16px;
	padding: 14px 14px;
	display: flex;
	align-items: center;
	font-size: 14px;
	font-weight: 600;
	box-shadow: 0 12px 25px rgba(0, 0, 0, 0.15), inset 0 1px 0
		rgba(255, 255, 255, 0.9), inset 0 -2px 5px rgba(0, 0, 0, 0.12);
	transform: translateZ(0);
	transition: transform 0.35s ease, box-shadow 0.35s ease;
	position: relative;
	overflow: hidden;
}

.metrics-vertical .metric-tile::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(120deg, rgba(255, 255, 255, 0.45),
		transparent 60%);
	opacity: 0;
	transition: opacity 0.3s ease;
}

/* Hover lift */
.metrics-vertical .metric-tile:hover {
	transform: translateY(-6px) scale(1.01);
	box-shadow: 0 18px 40px rgba(0, 0, 0, 0.28);
}

.metrics-vertical .metric-tile:hover::after {
	opacity: 1;
}

/* Icon styling */
.metric-tile i {
	font-size: 22px;
	margin-right: 12px;
	filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.25));
}

/* Value */
.metric-tile strong {
	margin-left: auto;
	font-size: 14px;
	color: #0b1d3a;
}

/* Accent colors */
.blue i {
	color: #0d6efd;
}

.green i {
	color: #20c997;
}

.purple i {
	color: #6f42c1;
}

.orange i {
	color: #fd7e14;
}

.teal i {
	color: #0dcaf0;
}

/* Right side buttons */

/* Icon */
.icon-circle {
	width: 46px;
	height: 46px;
	border-radius: 50%;
	background: linear-gradient(135deg, #1FA2FF, #0B5ED7);
	display: flex;
	align-items: center;
	justify-content: center;
	color: #fff;
	font-size: 20px;
	box-shadow: 0 6px 15px rgba(31, 162, 255, 0.45);
}

/* Card styling */
.scheme-card {
	background-color: var(--bg2);
	border-radius: 12px;
	padding: 25px;
	height: 100%;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
	transition: transform 0.3s ease, box-shadow 0.3s ease;
}

/* Hover effect (optional but nice) */
.scheme-card:hover {
	transform: translateY(-5px);
	box-shadow: 0 8px 20px rgba(0, 0, 0, 0.15);
}

/* Heading */
.scheme-card h5 {
	font-size: 18px;
	font-weight: 700;
	margin-bottom: 20px;
	text-transform: uppercase;
}

/* Image */
.scheme-card img {
	width: 100%;
	border-radius: 8px;
	object-fit: cover;
}

/* Image overlay circle effect */
.image-overlay::before {
	content: "";
	position: absolute;
	left: -120px;
	top: 50%;
	transform: translateY(-50%);
	width: 420px;
	height: 420px;
	background: rgba(255, 255, 255, 0.15);
	border-radius: 50%;
	z-index: 1;
}

.image-overlay img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	min-height: 320px;
}

/* Responsive */
@media ( max-width : 991px) {
	.isa-content {
		padding: 30px 25px;
		text-align: center;
	}
	.image-overlay::before {
		display: none;
	}
}

* /
	/* Slider/Marquee */ 
.logo-slider {
	overflow: hidden;
	background-color: #ffffff;
	border: 1px solid #ddd;
	border-radius: 8px;
	padding: 20px 0;
	box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
}

.logo-track {
	display: flex;
	width: max-content;
	animation: scroll-left 15s linear infinite;
}

.logo-item {
	min-width: 180px;
	height: 90px;
	margin: 0 15px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: #f8f9fa;
	border-radius: 6px;
	box-shadow: 0 2px 6px rgba(0, 0, 0, 0.08);
}

.logo-item img {
	max-width: 130px;
	max-height: 60px;
	object-fit: contain;
}
/* Animation */
@
keyframes scroll-left { 0% {
	transform: translateX(0);
}

100
%
{
transform
:
translateX(
-50%
);
}
}

/* Hover pause effect */
.logo-slider:hover .logo-track {
	animation-play-state: paused;
}

/* video image gallery  */
/* Centered glass container */
.main-glass-panel {
	max-width: 1000px;
	margin: auto;
	padding: 30px;
	border-radius: 28px;
	background: rgba(255, 255, 255, 0.65);
	backdrop-filter: blur(16px);
	box-shadow: 0 25px 60px rgba(0, 0, 0, 0.18);
	border: 1px solid rgba(255, 255, 255, 0.4);
}

/* Theme section */
.theme-glass {
	background: var(--bg2);
	border-radius: 22px;
	padding: 20px 22px;
	box-shadow: 0 16px 35px rgba(0, 0, 0, 0.15);
	border: 1px solid rgba(255, 255, 255, 0.5);
}

.theme-info {
	display: flex;
	align-items: center;
	gap: 14px;
}

.theme-icon {
	font-size: 28px;
	color: var(--bg-color);
}

.theme-glass h6 {
	margin: 0;
	font-weight: 700;
	font-size: 15px;
}

.theme-glass p {
	margin: 0;
	font-size: 12px;
	color: var(--bg-color);
}

/* Action Ribbon */
.action-ribbon {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 12px;
	padding: 18px;
	border-radius: 22px;
	background: rgba(255, 255, 255, 0.7);
	backdrop-filter: blur(14px);
	box-shadow: 0 20px 40px rgba(0, 0, 0, 0.15);
}

.ribbon-item {
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 12px 18px;
	border-radius: 999px;
	background: white;
	font-size: 13px;
	font-weight: 600;
	color: #0b1d3a;
	box-shadow: 0 8px 18px rgba(0, 0, 0, 0.12);
	transition: all 0.3s ease;
	cursor: pointer;
}

.ribbon-item:hover {
	transform: translateY(-4px) scale(1.05);
}

.ticker-wrapper {
	background: var(--primary-dark);
	color: #fff;
	overflow: hidden;
	display: flex;
	align-items: center;
}

.ticker-label {
	background: #d9d9d9;
	color: var(--primary-dark);
	padding: 8px 15px;
	font-weight: 600;
	white-space: nowrap;
}

.ticker {
	display: flex;
	align-items: center;
	white-space: nowrap;
	animation: scroll 20s linear infinite;
}

.ticker a {
	color: #fff;
	text-decoration: none;
	margin: 0 40px;
}

.ticker a:hover {
	text-decoration: underline;
}

@keyframes scroll { 0% {	transform: translateX(100%);} 100% {
transform:translateX(-100%);
}}
.controls {
	padding: 0 10px;
	cursor: pointer;
}

/*spark effect */

/* MUST HAVE THIS */
.top-header {
	position: relative; /* 🔥 REQUIRED */
	overflow: hidden;
}

/* =========================
   ELECTRIC LINE
   ========================= */

.electric-line {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 4px;
    overflow: hidden;
    z-index: 20;
    pointer-events: none;
}

/* Flowing electric current */
.electric-line::before {
    content: "";
    position: absolute;
    top: 0;
    left: -100%;

    width: 200%;
    height: 100%;

    background: linear-gradient(
        90deg,
        transparent 0%,
        transparent 20%,
        #00e5ff 35%,
        #ffffff 42%,
        #00e5ff 50%,
        #1f5ab2 58%,
        transparent 75%,
        transparent 100%
    );
    box-shadow:
        0 0 5px #00e5ff,
        0 0 12px #00e5ff,
        0 0 20px rgba(0, 229, 255, 0.8);
    animation: electricFlow 4s linear infinite;
}

/* Moving bright spark */
.electric-line::after {
    content: "";
    position: absolute;
    top: -3px;
    left: -50px;

    width: 50px;
    height: 10px;

    background: radial-gradient(
        ellipse,
        #ffffff 0%,
        #00e5ff 35%,
        transparent 75%
    );
    filter: blur(1px);
    animation: sparkMove 2.2s linear infinite;
}


/* =========================
   ELECTRIC FLOW
   ========================= */

@keyframes electricFlow {

    0% {
        transform: translateX(-50%);
    }

    100% {
        transform: translateX(50%);
    }
}


/* =========================
   SPARK MOVEMENT
   ========================= */

@keyframes sparkMove {

    0% {
        left: -50px;
        opacity: 0;
    }

    10% {
        opacity: 1;
    }

    50% {
        opacity: 1;
    }

    90% {
        opacity: 1;
    }

    100% {
        left: 100%;
        opacity: 0;
    }
}


/* =========================
   HEADER LIGHTNING
   ========================= */

.lightning-effect {
    position: relative;
    overflow: hidden;
}


/* Lightning flash */
.lightning-effect::after {
    content: "";
    position: absolute;
    inset: 0;
    background:
        radial-gradient(
            circle at 70% 20%,
            rgba(255, 255, 255, 0.8),
            transparent 60%
        );
    opacity: 0;
    animation: lightningFlash 10s infinite;
    pointer-events: none;
}


/* =========================
   LIGHTNING FLASH ANIMATION
   ========================= */

@keyframes lightningFlash {

    0%,
    90%,
    100% {
        opacity: 0;
    }

    92% {
        opacity: 0.6;
    }

    94% {
        opacity: 0.15;
    }

    96% {
        opacity: 0.7;
    }
}

.fbpage .capchaset {
	display: inline;
	margin: 10px;
	margin-bottom: 0px;
}

/* ===== PROFILE CONTAINER ===== */
.profile-container {
	margin: 0 auto;
	padding: 10px 0;
	text-align: center;
}

/* ===== PROFILE-TITLE ===== */
.profile-title {
	color: #1a5276;
	font-weight: 700;
	font-size: 28px;
	border-bottom: 3px solid #1a5276;
	padding-bottom: 15px;
	margin-bottom: 30px;
	text-align: center;
}

/* ===== PROFILE-CHAIRPERSON-CARD ===== */
.profile-chairperson-card {
	background: #fdf2f0;
	border-radius: 14px;
	border-left: 6px solid var(--primary-dark);
	border-right: 6px solid var(--primary-dark);
	padding: 20px 25px;
	margin: 0 auto 35px;
	max-width: 520px;
	text-align: center;
	box-shadow: 0 4px 20px rgba(192, 57, 43, 0.10);
	transition: transform 0.3s ease, box-shadow 0.3s ease;
	cursor: pointer;
}

.profile-chairperson-card:hover {
	transform: translateY(-3px);
	box-shadow: 0 8px 30px rgba(192, 57, 43, 0.18);
}

/* ===== PROFILE-CHAIRPERSON-NAME ===== */
.profile-chairperson-name {
	font-size: 24px;
	font-weight: 800;
	color: var(--primary-dark);
	margin-bottom: 2px;
}

/* ===== PROFILE-CHAIRPERSON-DESIGNATION ===== */
.profile-chairperson-designation {
	font-size: 15px;
	color: #555;
	font-weight: 500;
}

/* ===== PROFILE-IMAGE-CHAIRPERSON ===== */
.profile-image-chairperson {
	width: 80px;
	height: 80px;
	border-radius: 50%;
	object-fit: cover;
	border: 4px solid var(--primary-dark);
	background: #f8f9fa;
	margin: 0 auto 8px;
	display: block;
}

.profile-image-chairperson-placeholder {
	width: 80px;
	height: 80px;
	border-radius: 50%;
	background: #f8f9fa;
	border: 4px solid var(--primary-dark);
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 30px;
	color: var(--primary-dark);
	margin: 0 auto 8px;
}

/* ===== PROFILE-CHAIRPERSON-DETAILS ===== */
.profile-chairperson-details {
	font-size: 13px;
	color: #555;
	margin-top: 4px;
}

.profile-chairperson-details i {
	width: 20px;
	color: var(--primary-dark);
}

.profile-chairperson-details a {
	color: var(--primary-dark) !important;
	text-decoration: none;
}

/* ===== PROFILE-PDF-CHAIRPERSON ===== */
.profile-pdf-chairperson {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	margin-top: 10px;
	padding: 6px 16px;
	background: #fff;
	border-radius: 8px;
	border: 1px solid var(--primary-dark);
	cursor: pointer;
	transition: all 0.3s;
	text-decoration: none;
}

.profile-pdf-chairperson:hover {
	background: #fdf2f0;
	border-color: var(--primary-dark);
	text-decoration: none;
}

.profile-pdf-chairperson i.fa-file-pdf {
	font-size: 20px;
	color: var(--primary-dark);
}

.profile-pdf-chairperson .pdf-info {
	flex: 1;
	text-align: left;
}

.profile-pdf-chairperson .pdf-info .pdf-name {
	font-size: 12px;
	font-weight: 500;
	color: #333;
}

.profile-pdf-chairperson .pdf-info .pdf-size {
	font-size: 10px;
	color: #888;
}

.profile-pdf-chairperson .pdf-view-icon {
	color: var(--primary-dark);
	font-size: 12px;
}

/* ===== PROFILE-MEMBERS-LIST ===== */
.profile-members-list {
	display: flex;
	justify-content: center;
	gap: 16px;
	margin-top: 10px;
	flex-wrap: wrap;
}

/* ===== PROFILE-MEMBER-ROW ===== */
.profile-member-row {
	display: flex;
	flex-direction: column;
	align-items: center;
	background: #fff;
	border-radius: 10px;
	border-left: 5px solid var(--primary-dark);
	border-right: 5px solid var(--primary-dark);
	padding: 16px 20px;
	box-shadow: 0 2px 12px rgba(0, 0, 0, 0.06);
	transition: transform 0.2s ease, box-shadow 0.2s ease;
	cursor: pointer;
	flex: 0 1 220px;
	min-width: 180px;
	text-align: center;
}

.profile-member-row:hover {
	transform: translateY(-4px);
	box-shadow: 0 6px 20px rgba(0, 0, 0, 0.10);
}

/* ===== PROFILE-MEMBER-IMAGE ===== */
.profile-member-image {
	width: 60px;
	height: 60px;
	border-radius: 50%;
	object-fit: cover;
	border: 3px solid var(--primary-dark);
	background: #f8f9fa;
	flex-shrink: 0;
	margin-bottom: 8px;
}

.profile-member-image-placeholder {
	width: 60px;
	height: 60px;
	border-radius: 50%;
	background: #e9ecef;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 24px;
	color: #adb5bd;
	border: 3px solid #dee2e6;
	flex-shrink: 0;
	margin-bottom: 8px;
}

/* ===== PROFILE-MEMBER-INFO ===== */
.profile-member-info {
	flex: 1;
	min-width: 0;
	width: 100%;
}

/* ===== PROFILE-MEMBER-NAME ===== */
.profile-member-name {
	font-size: 15px;
	font-weight: 700;
	color: var(--primary-dark);
	margin-bottom: 1px;
}

/* ===== PROFILE-MEMBER-DIVISION ===== */
.profile-member-division {
	font-size: 11px;
	color: #888;
	font-weight: 500;
	margin-bottom: 4px;
}

/* ===== PROFILE-MEMBER-DESIGNATION ===== */
.profile-member-designation {
	font-size: 12px;
	color: #555;
	font-weight: 500;
	margin-bottom: 4px;
}

/* ===== PROFILE-MEMBER-DETAILS ===== */
.profile-member-details {
	font-size: 11px;
	color: #666;
	margin-top: 2px;
	display: flex;
	flex-direction: column;
	gap: 1px;
	align-items: center;
}

.profile-member-details i {
	width: 16px;
	color: var(--primary-dark);
	font-size: 11px;
}

.profile-member-details a {
	color: var(--primary-dark);
	text-decoration: none;
}

/* ===== PROFILE-MEMBER-PDF ===== */
.profile-member-pdf {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	margin-top: 6px;
	padding: 3px 10px 3px 6px;
	background: #f8f9fa;
	border-radius: 20px;
	border: 1px solid #e9ecef;
	font-size: 11px;
	font-weight: 500;
	color: #333;
	cursor: pointer;
	transition: all 0.3s;
	text-decoration: none;
}

.profile-member-pdf:hover {
	background: #e9ecef;
	border-color: var(--primary-dark);
	text-decoration: none;
}

.profile-member-pdf i.fa-file-pdf {
	font-size: 14px;
	color: var(--primary);
}

.profile-member-pdf .pdf-view-icon {
	color: var(--primary-dark);
	font-size: 10px;
	margin-left: 2px;
}

/* ===== PROFILE-MEMBER-PDF-TEXT ===== */
.profile-member-pdf-text {
	font-size: 10px;
	color: #888;
	margin-top: 4px;
}

/* ===== PROFILE-SECTION-HEADER ===== */
.profile-section-header {
	font-size: 18px;
	font-weight: 600;
	color: var(--primary-dark);
	margin: 0 0 16px 0;
	padding-bottom: 8px;
	border-bottom: 2px solid #e9ecef;
	text-align: center;
}

.profile-section-header i {
	margin-right: 10px;
}

/* ===== RESPONSIVE ===== */
@media ( max-width : 768px) {
	.profile-title {
		font-size: 22px;
	}
	.profile-chairperson-name {
		font-size: 20px;
	}
	.profile-chairperson-designation {
		font-size: 13px;
	}
	.profile-chairperson-card {
		padding: 16px 18px;
		max-width: 100%;
	}
	.profile-image-chairperson {
		width: 64px;
		height: 64px;
	}
	.profile-image-chairperson-placeholder {
		width: 64px;
		height: 64px;
		font-size: 24px;
	}
	.profile-members-list {
		gap: 12px;
	}
	.profile-member-row {
		flex: 0 1 160px;
		min-width: 140px;
		padding: 12px 14px;
	}
	.profile-member-name {
		font-size: 13px;
	}
	.profile-member-designation {
		font-size: 11px;
	}
	.profile-member-image {
		width: 48px;
		height: 48px;
	}
	.profile-member-image-placeholder {
		width: 48px;
		height: 48px;
		font-size: 18px;
	}
}

@media ( max-width : 480px) {
	.profile-chairperson-name {
		font-size: 18px;
	}
	.profile-member-row {
		flex: 0 1 100%;
		max-width: 280px;
	}
	.profile-members-list {
		justify-content: center;
		flex-wrap: wrap;
	}
}

/* ===== CONTACT US STYLES ===== */
.contact-container {
	max-width: 1200px;
	margin: 0 auto;
	padding: 20px 15px;
}

.chief-engineer h4 {
	color: var(--primary);
	font-size: 20px;
}

.contact-main-title {
	color: var(--primary-dark);
	font-weight: 700;
	font-size: 28px;
	border-bottom: 3px solid var(--primary-dark);
	padding-bottom: 15px;
	margin-bottom: 30px;
	text-align: center;
}

.contact-search-wrapper {
	max-width: 500px;
	margin: 0 auto 30px;
	position: relative;
}

.contact-search-wrapper input {
	width: 100%;
	padding: 12px 20px 12px 50px;
	border: 2px solid #dee2e6;
	border-radius: 30px;
	font-size: 15px;
	transition: all 0.3s;
	background: #fff;
}

.contact-search-wrapper input:focus {
	outline: none;
	border-color: var(--primary-dark);
	box-shadow: 0 0 0 3px var(--primary-dark);
}

.contact-search-wrapper i {
	position: absolute;
	left: 18px;
	top: 50%;
	transform: translateY(-50%);
	color: #888;
	font-size: 18px;
}

/* ===== CARD STYLES ===== */
.contact-division-card, .contact-designation-card {
	background: #fff;
	border-radius: 12px;
	box-shadow: 0 2px 12px rgba(0, 0, 0, 0.08);
	margin-bottom: 20px;
	overflow: hidden;
	border-left: 5px solid var(--primary);
	transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.contact-division-card:hover, .contact-designation-card:hover {
	transform: translateY(-2px);
	box-shadow: 0 6px 24px rgba(0, 0, 0, 0.12);
}

.contact-designation-card {
	border-left-color: var(--primary);
}

.contact-designation-card .contact-card-header {
	background: var(--primary);
	color: #fff;
}

.contact-designation-card .contact-card-header:hover {
	background: var(--primary-dark);
}

/* ===== HEADER ===== */
.contact-card-header {
	background: var(--primary);
	color: #fff;
	padding: 14px 20px;
	font-size: 16px;
	font-weight: 600;
	display: flex;
	align-items: center;
	justify-content: space-between;
	cursor: pointer;
	user-select: none;
	transition: background 0.3s;
}

.contact-card-header:hover {
	background: var(--primary-dark);
}

.contact-card-header .contact-header-left {
	display: flex;
	align-items: center;
	gap: 12px;
}

.contact-card-header .contact-badge-count {
	background: rgba(255, 255, 255, 0.2);
	color: #fff;
	font-size: 12px;
	padding: 3px 12px;
	border-radius: 20px;
	font-weight: 500;
}

.contact-card-header .contact-toggle-icon {
	transition: transform 0.3s;
	font-size: 14px;
}

.contact-card-header .contact-toggle-icon.collapsed {
	transform: rotate(-90deg);
}

/* ===== BODY ===== */
.contact-card-body {
	padding: 0;
	overflow: hidden;
	transition: max-height 0.4s ease;
	max-height: 5000px;
}

.contact-card-body.hidden {
	max-height: 0;
	padding: 0;
}

.contact-card-body-inner {
	padding: 20px;
	overflow-x: auto;
}

/* ===== TABLE WITH SCROLLABLE BODY ===== */
.contact-table-wrapper {
	max-height: 450px;
	overflow-y: auto;
	overflow-x: auto;
	border-radius: 8px;
	border: 1px solid #e9ecef;
}

.contact-table-wrapper::-webkit-scrollbar {
	width: 6px;
	height: 6px;
}

.contact-table-wrapper::-webkit-scrollbar-track {
	background: #f1f1f1;
	border-radius: 10px;
}

.contact-table-wrapper::-webkit-scrollbar-thumb {
	background: var(--primary-dark);
	border-radius: 10px;
}

.contact-table-wrapper::-webkit-scrollbar-thumb:hover {
	background: var(--primary-dark);
}

.contact-employee-table {
	width: 100%;
	border-collapse: collapse;
	font-size: 14px;
	min-width: 700px;
}

.contact-employee-table thead th {
	background: #f8f9fa;
	color: var(--primary-dark);
	padding: 10px 15px;
	text-align: left;
	border-bottom: 2px solid #e9ecef;
	font-weight: 600;
	white-space: nowrap;
	font-size: 13px;
	position: sticky;
	top: 0;
	z-index: 10;
	background: #f8f9fa;
}

.contact-employee-table tbody td {
	padding: 8px 15px;
	border-bottom: 1px solid #f0f0f0;
	vertical-align: middle;
	/*font-size: 13px;*/
}

/*.contact-employee-table tbody tr:hover {
	font-size: 18px; font-weight:bold;  color:var(--primary)!important; 
}
.contact-employee-table tbody tr:hove{font-size: 18px!important; padding: 30px; border:2px var(--primary) solid!important; color:var(--primary)!important; background:var(--primary)!important;}
*/
/* =========================================================
   CONTACT ROW HOVER TOOLTIP
   ========================================================= */

.contact-row-tooltip {
    position: fixed;
    z-index: 99999;

    max-width: 1200px;
    min-width: 1200px;

    padding: 14px 18px;

    background: #ffffff;
    color: #1f2937;

    border: 1px solid #d1d5db;
    border-radius: 12px;

    box-shadow:
        0 12px 30px rgba(0, 0, 0, 0.18),
        0 3px 8px rgba(0, 0, 0, 0.08);

    font-size: 15px;
    line-height: 1.5;

    pointer-events: none;

    opacity: 0;
    visibility: hidden;

    transform: translateY(8px);
    transition:
        opacity .18s ease,
        transform .18s ease,
        visibility .18s ease;
}

.contact-row-tooltip.show {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

/* Small arrow */
.contact-row-tooltip::after {
    content: "";
    position: absolute;

    bottom: -7px;
    left: 28px;

    width: 13px;
    height: 13px;

    background: #ffffff;

    border-right: 1px solid #d1d5db;
    border-bottom: 1px solid #d1d5db;

    transform: rotate(45deg);
}

/* Tooltip title */
.contact-tooltip-title {
    font-size: 18px;
    font-weight: 800;
    color: var(--primary, #0d6efd);

    margin-bottom: 8px;

    padding-bottom: 7px;
    border-bottom: 1px solid #e5e7eb;
}

/* Each field */
.contact-tooltip-row {
    display: flex;
    gap: 10px;
    margin: 4px 0;
}

.contact-tooltip-label {
    min-width: 85px;
    font-weight: 700;
    color: #374151;
}

.contact-tooltip-value {
    font-weight: 600;
    color: #111827;
    word-break: break-word;
}

/* =========================================================
   CONTACT EMPLOYEE HOVER TOOLTIP
   ========================================================= */

.contact-row-tooltip {
    position: fixed;
    z-index: 99999;

    width: 340px;
    max-width: calc(100vw - 24px);

    padding: 18px;

    background: #ffffff;
    color: #333;

    border-radius: 14px;

    border: 1px solid rgba(0, 0, 0, 0.08);

    box-shadow:
        0 12px 35px rgba(0, 0, 0, 0.18),
        0 3px 10px rgba(0, 0, 0, 0.08);

    opacity: 0;
    visibility: hidden;

    transform: translateY(8px) scale(0.97);

    transition:
        opacity 0.18s ease,
        transform 0.18s ease,
        visibility 0.18s ease;

    pointer-events: none;
}

.contact-row-tooltip.show {
    opacity: 1;
    visibility: visible;
    transform: translateY(0) scale(1);
}


/* =========================================================
   PROFILE HEADER
   ========================================================= */

.contact-tooltip-profile {
    display: flex;
    align-items: center;

    gap: 15px;

    padding-bottom: 15px;
    margin-bottom: 14px;

    border-bottom: 1px solid #eeeeee;
}


/* =========================================================
   BIG PROFILE IMAGE
   ========================================================= */

.contact-tooltip-photo {
    width: 105px;
    height: 105px;

    min-width: 105px;

    border-radius: 12px;

    overflow: hidden;

    background: #f1f3f5;

    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.12);
}

.contact-tooltip-img {
    width: 100%;
    height: 100%;

    object-fit: cover;

    display: block;
}


/* =========================================================
   IMAGE PLACEHOLDER
   ========================================================= */

.contact-tooltip-img-placeholder {
    width: 100%;
    height: 100%;

    display: flex;
    align-items: center;
    justify-content: center;

    background: #f1f3f5;

    color: #9aa0a6;

    font-size: 42px;
}


/* =========================================================
   EMPLOYEE NAME
   ========================================================= */

.contact-tooltip-title {
    flex: 1;

    font-size: 18px;
    font-weight: 700;

    line-height: 1.35;

    color: var(--primary, #1b4965);

    word-break: break-word;
}


/* =========================================================
   DETAIL ROWS
   ========================================================= */

.contact-tooltip-row {
    display: grid;

    grid-template-columns: 95px 1fr;

    gap: 10px;

    padding: 7px 0;

    border-bottom: 1px solid #f1f1f1;

    font-size: 13px;

    line-height: 1.4;
}

.contact-tooltip-row:last-child {
    border-bottom: none;
}


/* =========================================================
   LABEL
   ========================================================= */

.contact-tooltip-label {
    font-weight: 600;

    color: #777;

    white-space: nowrap;
}


/* =========================================================
   VALUE
   ========================================================= */

.contact-tooltip-value {
    color: #333;

    font-weight: 500;

    word-break: break-word;
}


/* =========================================================
   ROW HOVER EFFECT
   ========================================================= */

.contact-employee-table tbody tr {
    transition: background-color 0.15s ease;
}

.contact-employee-table tbody tr.contact-row-hover {
    background-color: rgba(0, 0, 0, 0.025);
}


/* =========================================================
   TOOLTIP BELOW ROW
   ========================================================= */

.contact-row-tooltip.tooltip-below {
    transform: translateY(-8px) scale(0.97);
}

.contact-row-tooltip.tooltip-below.show {
    transform: translateY(0) scale(1);
}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 576px) {

    .contact-row-tooltip {
        width: calc(100vw - 20px);
        padding: 15px;
    }

    .contact-tooltip-photo {
        width: 85px;
        height: 85px;
        min-width: 85px;
    }

    .contact-tooltip-title {
        font-size: 16px;
    }

    .contact-tooltip-row {
        grid-template-columns: 80px 1fr;
        font-size: 12px;
    }
}

.contact-tooltip-grid { width: 100%; max-height: 210px; min-height: 150px; display: grid; grid-template-columns: 150px 240px 1fr 1fr; gap: 0; align-items: stretch; box-sizing: border-box; } /* ===================================================== ALL COLUMNS ===================================================== */ .contact-tooltip-col { min-width: 0; box-sizing: border-box; } /* ===================================================== PHOTO COLUMN ===================================================== */ .contact-tooltip-photo-col { display: flex; align-items: center; justify-content: center; padding: 10px; border-right: 1px solid rgba(0, 0, 0, 0.08); } .contact-tooltip-photo { width: 105px; height: 105px; display: flex; align-items: center; justify-content: center; } .contact-tooltip-img { width: 100%; height: 100%; object-fit: cover; border-radius: 10px; } .contact-tooltip-img-placeholder { width: 100%; height: 100%; display: flex; align-items: center; justify-content: center; border-radius: 10px; background: #f1f3f5; color: #8b949e; font-size: 42px; } /* ===================================================== NAME COLUMN ===================================================== */ .contact-tooltip-name-col { display: flex; align-items: center; padding: 15px 20px; border-right: 1px solid rgba(0, 0, 0, 0.08); } .contact-tooltip-title { font-size: 21px; font-weight: 700; line-height: 1.25; word-break: break-word; } /* ===================================================== DETAILS COLUMNS ===================================================== */ .contact-tooltip-details { padding: 10px 18px; display: flex; flex-direction: column; justify-content: center; gap: 5px; border-right: 1px solid rgba(0, 0, 0, 0.08); overflow: hidden; } /* ===================================================== INDIVIDUAL FIELD ===================================================== */ 
.contact-tooltip-field {
    display: grid;

    grid-template-columns: 110px minmax(0, 1fr);

    align-items: start;

    min-height: 27px;

    gap: 8px;
}


.contact-tooltip-label {
    font-size: 13px;
    font-weight: 700;
    color: #6c757d;

    white-space: nowrap;

    overflow: hidden;
    text-overflow: ellipsis;
}


.contact-tooltip-value {
    font-size: 14px;
    font-weight: 500;

    min-width: 0;

    /* Allow long values to wrap */
    white-space: normal;
    overflow: visible;

    /* Break very long words/emails if required */
    overflow-wrap: anywhere;
    word-break: break-word;

    line-height: 1.35;
}
/* ===================================================== RESPONSIVE ===================================================== */
 @media (max-width: 900px) { .contact-tooltip-grid { grid-template-columns: 100px 180px 1fr 1fr; } .contact-tooltip-photo { width: 75px; height: 75px; } .contact-tooltip-title { font-size: 17px; } 
.contact-tooltip-field { grid-template-columns: 85px minmax(0, 1fr); } } @media (max-width: 650px) { .contact-tooltip-grid { grid-template-columns: 90px 1fr; grid-template-rows: auto auto; } .contact-tooltip-details { border-top: 1px solid rgba(0, 0, 0, 0.08); } }


/* Highlight hovered table row */
.contact-employee-table tbody tr.contact-row-hover {
    background: rgba(13, 110, 253, 0.08) !important;
    box-shadow: inset 3px 0 0 var(--primary, #0d6efd);
    transition: background .15s ease;
}
.contact-employee-table tbody tr:last-child td {
	border-bottom: none;
}

/* ===== LOAD MORE BUTTON ===== */
.contact-load-more-container {
	text-align: center;
	padding: 12px 0 5px 0;
	border-top: 1px solid #e9ecef;
	margin-top: 5px;
}

.contact-load-more-btn {
	background: var(--primary-dark);
	color: #fff;
	border: none;
	padding: 6px 20px;
	border-radius: 20px;
	font-size: 13px;
	cursor: pointer;
	transition: background 0.3s;
}

.contact-load-more-btn:hover {
	background: var(--primary-dark);
}

.contact-load-more-btn:disabled {
	opacity: 0.5;
	cursor: not-allowed;
}

/* ===== EMPLOYEE IMAGE ===== */
.contact-employee-img {
	width: 36px;
	height: 36px;
	border-radius: 50%;
	object-fit: cover;
	border: 2px solid var(--primary-dark);
}

.contact-designation-card .contact-employee-img {
	border-color: var(--primary);
}

.contact-employee-img-placeholder {
	width: 36px;
	height: 36px;
	border-radius: 50%;
	background: #e9ecef;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 14px;
	color: #adb5bd;
	border: 2px solid #dee2e6;
}

.contact-email-text {
	/*color: #333;
	font-size: 13px;*/
}

.contact-phone-text {
/*	color: #333;
	font-size: 13px;*/
}

.contact-text-muted {
	color: #999 !important;
	font-size: 12px;
}

.contact-sno-column {
	width: 35px;
	text-align: center;
	font-weight: 500;
	color: #888;
}

.contact-photo-column {
	width: 50px;
	text-align: center;
}

/* ===== NO DATA MESSAGE ===== */
.contact-no-data-message {
	text-align: center;
	padding: 20px;
	color: #888;
	font-size: 14px;
	background: #f8f9fa;
	border-radius: 8px;
	margin: 5px 0;
}

.contact-no-data-message i {
	margin-right: 8px;
	color: #ddd;
}

.contact-no-data-section {
	text-align: center;
	padding: 40px 20px;
	color: #888;
}

.contact-no-data-section i {
	font-size: 48px;
	color: #ddd;
	margin-bottom: 20px;
}

/* ===== SCROLL TOP ===== */
.contact-scroll-top {
	position: fixed;
	bottom: 30px;
	right: 30px;
	background: var(--primary-dark);
	color: #fff;
	width: 45px;
	height: 45px;
	border-radius: 50%;
	display: none;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
	transition: all 0.3s;
	border: none;
	z-index: 999;
}

.contact-scroll-top:hover {
	background: var(--primary-dark);
	transform: translateY(-3px);
}

.contact-card-loading {
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 20px;
	color: #888;
	gap: 10px;
}

.contact-card-loading .spinner-border-sm {
	width: 20px;
	height: 20px;
}

/* ===== PAGE LOADER ===== */
.contact-page-loader {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(255, 255, 255, 0.92);
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	z-index: 99999;
	transition: opacity 0.6s ease;
}

.contact-page-loader.hidden {
	opacity: 0;
	pointer-events: none;
}

.contact-page-loader .loader-spinner {
	width: 60px;
	height: 60px;
	border: 5px solid #e9ecef;
	border-top: 5px solid var(--primary-dark);
	border-radius: 50%;
	animation: contactSpin 0.8s linear infinite;
}

.contact-page-loader .loader-text {
	margin-top: 20px;
	color: var(--primary-dark);
	font-size: 16px;
	font-weight: 500;
	letter-spacing: 0.5px;
}

.contact-page-loader .loader-progress {
	margin-top: 10px;
	color: #888;
	font-size: 13px;
}

@keyframes contactSpin { 0% {transform: rotate(0deg);}
100%{transform:rotate(360deg);}
}
@media ( max-width : 768px) {
	.contact-main-title {
		font-size: 22px;
	}
	.contact-card-header {
		font-size: 14px;
		padding: 12px 15px;
	}
	.contact-employee-table {
		font-size: 12px;
	}
	.contact-employee-table thead th, .contact-employee-table tbody td {
		padding: 6px 10px;
	}
	.contact-employee-img, .contact-employee-img-placeholder {
		width: 28px;
		height: 28px;
		font-size: 11px;
	}
	.contact-photo-column {
		width: 40px;
	}
	.contact-search-wrapper {
		max-width: 100%;
		margin: 0 15px 20px;
	}
	.contact-table-wrapper {
		max-height: 300px;
	}
	.contact-page-loader .loader-spinner {
		width: 45px;
		height: 45px;
	}
	.contact-page-loader .loader-text {
		font-size: 14px;
	}
}

@media ( max-width : 480px) {
	.contact-card-body-inner {
		padding: 10px;
	}
	.contact-employee-table thead th, .contact-employee-table tbody td {
		padding: 5px 6px;
		font-size: 11px;
	}
	.contact-employee-table thead th {
		font-size: 10px;
	}
	.contact-sno-column {
		width: 25px;
	}
	.contact-photo-column {
		width: 35px;
	}
	.contact-email-text, .contact-phone-text {
		font-size: 11px;
	}
	.contact-table-wrapper {
		max-height: 250px;
	}
	.contact-page-loader .loader-spinner {
		width: 35px;
		height: 35px;
	}
	.contact-page-loader .loader-text {
		font-size: 12px;
	}
}

thead .table-light {
	background: var(--bg) !important;
}

tbody tr:hover {
	background: var(--bg) !important;
}

/*  CSS for important link */
.external-links {
	width: 95%;
	max-width: 1400px;
	margin: 30px auto;
	background: #dfe8f2;
	border-radius: 5px;
	overflow: hidden;
}

.section-title {
	background: var(--primary-dark);
	color: #fff;
	padding: 12px 18px;
	font-size: 22px;
	font-weight: 600;
}

.logo-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 20px;
	padding: 20px;
}

.logo-card {
	background: #fff;
	height: 120px;
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 12px;
	border-radius: 4px;
	text-decoration: none;
	transition: .3s;
	overflow: hidden;
	border: 1px solid #ddd;
}

.logo-card img {
	max-width: 100%;
	max-height: 100%;
	width: auto;
	height: auto;
	object-fit: contain;
}

@media ( max-width :992px) {
	.logo-grid {
		grid-template-columns: repeat(3, 1fr);
	}
}

@media ( max-width :650px) {
	.logo-grid {
		grid-template-columns: repeat(2, 1fr);
		gap: 15px;
	}
	.logo-card {
		height: 80px;
	}
	.section-title {
		font-size: 20px;
	}
}

@media ( max-width :420px) {
	.logo-grid {
		grid-template-columns: 1fr;
	}
	.logo-card {
		height: 90px;
	}
	.section-title {
		font-size: 18px;
		padding: 10px 15px;
	}
	.report-name-link{ 
	display: inline-block; 
    min-width: calc(100% - 140px);
    }
}

input::placeholder, textarea::placeholder {
	color: #666;
	opacity: 1;
}

input::-webkit-input-placeholder {
	color: #666;
}

input::-moz-placeholder {
	color: #666;
	opacity: 1;
}

input:-ms-input-placeholder {
	color: #666;
}

input::-ms-input-placeholder {
	color: #666;
}

.pdf-box {
	background: var(--card);
	padding: 12px 18px;
	margin-top: 20px;
	border-radius: 6px;

}


.accordion-button:not(.collapsed)
 {
    /*color: var(--bs-accordion-active-color);*/
    background-color: var(--bg)!important;
    border: 1px var(--primary) solid!important;
}
.btn-success{background: var(--primary)!important;}       
.btn-success:hover{background: var(--secondary)!important;}    
.filter-section {
    display: flex;
    align-items: center;
    gap: 12px;
    /* width: 100%; */
    flex-wrap: nowrap;
    margin-bottom:10px;
}

.filter-section label {
    white-space: nowrap;
    margin: 0;
    font-weight: 600;
}

.filter-section select {
    flex: 1;
    min-width: 180px;
}

.filter-section button {
    white-space: nowrap;
    padding: 8px 18px;
}
@media (max-width: 768px) {
    .filter-section {
        flex-wrap: wrap;
    }

    .filter-section label {
        /* width: 100%; */
    }

    .filter-section select,
    .filter-section button {
     /*    width: 100%; */
    }
  
}

.filter-section {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
}

.filter-section label {
    margin: 0;
    white-space: nowrap;
}

#reportDate {
    max-width: 200px;
    width: 200px;
    flex: 0 0 200px;
}

.filter-section .btn {
    white-space: nowrap;
}

#filterValidationMsg {
    width: 100%;
}
.hitcounter{}
.hitcount{ color: var(--primary-dark); 
	background: var(--bg); 
    padding: 2px; padding-left:6px; padding-right:6px;
    border-radius: 4px;font-weight:bold;
    }
.content-box {
			background: #fff;
			border-radius: 12px;
			padding: 15px;
			box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
			margin: 0 auto;
}
      
.table thead th{background:var(--primary)!important; color:#fff;}

.report-name-link{ 
	display: inline-block; 
    width: calc(100% - 140px);
    }

td .report-name-link a{ 
	display: inline!important; 
    }
.list-group li{
   /* display:flex;*/
    align-items:flex-start;
}


.list-group li > span:first-child{
    display:inline-block;
    vertical-align: top;
    margin-top:2px;
}

.list-group li > span:first-child{
    margin-right:8px;
    flex-shrink:0;
}
.list-group li .float-end{ position: absolute;
    right: 10px;
    }

.datereport .report-table-wrap {
	background: #fff;
	border-radius: 10px;
	box-shadow: 0 1px 4px rgba(0,0,0,0.08);
}
table.report-table { width: 100%; border-collapse: collapse; }
.datereport .report-table thead tr.table-title td {
	background: var(--primary-dark);
	color: #fff;
	font-weight: 600;
	font-size: 16px;
	padding: 12px 18px;
	text-align: center;
}
.report-table thead tr.col-heads th {
	background: var(--primary);
	color: #fff;
	font-weight: 600;
	padding: 10px 18px;
	text-align: center;
	font-size: 14px;
}
.report-table tbody td {
	padding: 14px 18px;
	text-align: center;
	border-bottom: 1px solid #f1e5d8;
	font-size: 14px;
	color: #333;
}
.report-table tbody tr:last-child td { border-bottom: none; }
.report-table tbody td.report-name-cell {
	text-align: left !important;
	color: var(--primary-dark);
	font-weight: 600;
}
.report-table tbody td .period-cell{text-align: left !important;}
.report-table .action-icons a {
	color: #b35c00;
	margin: 0 6px;
	font-size: 15px;
	text-decoration: none;
}
.report-table .action-icons .view-count {
	font-size: 12px;
	color: #999;
	margin-left: 2px;
}
.datereport .no-file { color: #bbb; }

.datereport .empty-state { text-align: center; padding: 60px 20px; color: #888; }
.datereport .empty-state i { font-size: 40px; margin-bottom: 12px; display: block; }

/* ===== Filter Bar Styles ===== */
.datereport .filter-bar {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 14px 18px 0;
	flex-wrap: wrap;
}
.datereport .filter-bar label {
	font-weight: 600;
	color: #333;
	font-size: 14px;
	margin-bottom: 0;
	white-space: nowrap;
}
.datereport .filter-bar input {
	border: 1px solid #ccc;
	border-radius: 4px;
	padding: 6px 10px;
	font-size: 14px;
}
.datereport .filter-bar .filter-sep {
	display: none;
}
.datereport .filter-bar .btn-filter {
	padding: 6px 14px;
	border: none;
	border-radius: 4px;
	font-size: 13px;
	font-weight: 600;
	cursor: pointer;
}
.datereport .filter-bar .btn-filter-success {
	background: var(--primary-dark);
	color: #fff;
}
.datereport .filter-bar .btn-filter-success:hover {
	background: #8a4700;
}
.datereport .filter-bar .btn-filter-warning {
	background: #ffc107;
	color: #212529;
}
.datereport .filter-bar .btn-filter-warning:hover {
	background:var(--primary);
}

/* Custom Picker Wrapper */
.datereport .picker-wrapper {
	position: relative;
	display: inline-block;
}
.datereport .picker-wrapper input {
	cursor: pointer;
	background-color: #fff;
	max-width: 180px;
}
.datereport .picker-dropdown {
	display: none;
	position: absolute;
	top: calc(100% + 4px);
	left: 0;
	z-index: 1000;
	width: max-content;
	min-width: 260px;
	max-width: min(320px, 92vw);
	background: #ffffff;
	border: 1px solid #dee2e6;
	border-radius: 6px;
	box-shadow: 0 6px 18px rgba(0, 0, 0, 0.15);
	padding: 10px 12px 18px;
	box-sizing: border-box;
}
.datereport .picker-dropdown.open {
	display: block;
}
.datereport #datePickerDropdown {
	min-width: 280px;
	max-width: min(340px, 94vw);
}
.datereport .picker-nav {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 4px 4px 10px;
	font-weight: 700;
	font-size: 1.05rem;
}
.datereport .picker-nav button {
	border: none;
	background: transparent;
	font-size: 1.1rem;
	font-weight: 700;
	color:var(--primary-dark);
	cursor: pointer;
	padding: 2px 8px;
	border-radius: 4px;
}
.datereport .picker-nav button:hover {
	background-color: #eef3f8;
}
.datereport .picker-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 6px 4px;
}
.datereport .picker-grid.month-grid {
	grid-template-columns: repeat(4, 1fr);
	gap: 14px 6px;
	padding: 4px 2px;
}
.datereport #yearPickerGrid {
	gap: 14px 8px;
	padding: 4px 2px;
}
.datereport #yearPickerGrid button {
	padding: 10px 6px;
}
.datereport .picker-grid button {
	border: none;
	background: transparent;
	color: var(--primary-dark);
	font-weight: 600;
	padding: 8px 4px;
	border-radius: 5px;
	cursor: pointer;
	font-size: 0.92rem;
}
.datereport .picker-grid.month-grid button {
	padding: 10px 6px;
}
.datereport .picker-grid button:hover {
	background-color: var(--primary);
}
.datereport .picker-grid button.selected {
	background-color: var(--primary-dark);
	color: #ffffff;
}
.datereport .picker-grid button:disabled {
	opacity: 0.35;
	cursor: default;
}
/* Quarter dropdown */
.datereport .quarter-select {
	max-width: 240px;
	padding: 6px 10px;
	border: 1px solid #ccc;
	border-radius: 4px;
	font-size: 14px;
	background: #fff;
	cursor: pointer;
}
.datereport .filter-sep-line {
	border: none;
	border-top: 1px solid #eee;
	margin: 12px 18px 0;
}
.datereport .filter-msg {
	color: #dc3545;
	font-size: 13px;
	padding: 0 18px 8px;
	display: none;
}
/* Daily Date Picker specific */
.datereport .date-picker-grid {
	display: grid;
	grid-template-columns: repeat(7, 1fr);
	gap: 6px 4px;
	padding: 6px 2px 2px;
}
.datereport .date-picker-grid button {
	border: none;
	background: transparent;
	color: #b35c00;
	font-weight: 600;
	padding: 8px 2px;
	border-radius: 5px;
	cursor: pointer;
	font-size: 0.88rem;
	text-align: center;
	line-height: 1.2;
	aspect-ratio: 1 / 1;
	display: flex;
	align-items: center;
	justify-content: center;
}
.datereport .date-picker-grid button:hover {
	background-color: #eef3f8;
}
.datereport .date-picker-grid button.selected {
	background-color: #b35c00;
	color: #ffffff;
}
.datereport .date-picker-grid button.other-month {
	color: #ccc;
}
.datereport .date-picker-grid button:disabled {
	opacity: 0.35;
	cursor: default;
}
.datereport .date-picker-grid .day-label {
	font-weight: 700;
	color: #666;
	font-size: 0.75rem;
	cursor: default;
	aspect-ratio: 1 / 1;
	display: flex;
	align-items: center;
	justify-content: center;
}
.datereport .date-picker-grid .day-label:hover {
	background: transparent;
}   
.empty-state .fa-folder-open{margin:0 auto;}
.footer-top .container {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: nowrap;
    gap: 10px;
    white-space: nowrap;
}

.footer-top a,  .footer-bar span,  .footer-bar span span {
    display: inline-flex;
    align-items: center;
    text-decoration: none;
}
.hitcounter {
    display: flex;
    gap: 5px;
}

.hitcounter .lang-en,
.hitcounter .lang-hi,
.hitcounter .hitcount {
    display: inline;
}
.reports-table th:nth-child(2), .reports-table td:nth-child(2)
 {
    width: 50%!important;
}
.badge-no-file{    --bs-bg-opacity: 1;
    background-color: rgba(var(--bs-secondary-rgb), var(--bs-bg-opacity)); color:#fff;
        --bs-badge-padding-x: 0.65em;
    --bs-badge-padding-y: 0.35em;
    --bs-badge-font-size: 0.75em;
    --bs-badge-font-weight: 700;
    --bs-badge-color: #fff;
    --bs-badge-border-radius: var(--bs-border-radius);
        text-align: center;
    white-space: nowrap;
        border-radius: 4px;
    padding: 4px;
    font-size: 75%;
    font-weight: 700;
    }
.pdf-box{background: var(--card);
	padding: 12px 18px;
	margin-top: 20px;
	border-radius: 6px;
	min-height:60px;
	}
.pdf-box .fa-angle-double-right, .pdf-box .pdf-title {float:left!important;}	
 .pdf-box .fa-angle-double-right{
  margin-top: 4px;
}
.pdf-box .pdf-size {float:right!important;}	
.btn-outline-primary, .btn-outline-secondary{border: 1px var(--primary-dark) solid!important}
.btn-outline-primary:hover, .btn-outline-secondary:hover{background: var(--primary)!important; color:#fff!important;}
#contactContent #errorMessage{display:none;}
.sitemap-section {
    width: 100%;
}

.sitemap-box {
    width: 100%;
    display: flex;
    gap: 30px;
    align-items: flex-start;
}

/* Columns */
.sitemap-column {
    flex: 1;
    min-width: 0;
}

/* Remove default list styling */
.sitemap-list,
.sitemap-list ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

/* ---------------------------------------------------------
   ALL LI
   --------------------------------------------------------- */

.sitemap-list li {
    position: relative;
}

/* ---------------------------------------------------------
   MAIN LINKS
   --------------------------------------------------------- */

.sitemap-list > li > a {
    display: flex;
    align-items: center;
    gap: 10px;

    width: 100%;
    padding: 12px 15px;

    text-decoration: none;
    color: #222;

    border-bottom: 1px solid #e8e8e8;

    transition: all 0.25s ease;
}

/* Hover main links */
.sitemap-list > li > a:hover {
    background: #f5f7fa;
    color: #b18a2d;
}

/* Main arrow */
.sitemap-list > li > a > i {
    flex-shrink: 0;
    transition: transform 0.25s ease;
}

/* Rotate arrow */
.sitemap-list > li:hover > a > i,
.sitemap-list > li:focus-within > a > i {
    transform: rotate(90deg);
}


/* =========================================================
   LEVEL 1 SUBMENU
   .submenu
   ========================================================= */

.sitemap-list > li.menu-item > .submenu {
    display: none;

    margin: 6px 0 10px 20px;

    padding: 8px;

    background: #fff;

    border: 1px solid #e5e5e5;
    border-radius: 8px;

    box-shadow: 0 5px 18px rgba(0, 0, 0, 0.08);

    max-height: 350px;
    overflow-y: auto;

    animation: sitemapOpen 0.25s ease;
}

/* SHOW LEVEL 1 */
.sitemap-list > li.menu-item:hover > .submenu,
.sitemap-list > li.menu-item:focus-within > .submenu {
    display: block;
}


/* =========================================================
   LEVEL 1 ITEMS
   ========================================================= */

.submenu > li > a {
    display: flex;
    align-items: center;
    gap: 8px;

    padding: 10px 12px;

    text-decoration: none;
    color: #333;

    border-radius: 6px;

    transition: all 0.2s ease;
}

.submenu > li > a:hover {
    background: #f1f4f8;
    color: #b18a2d;
}


/* =========================================================
   LEVEL 2
   ========================================================= */

.submenu-level2 {
    display: none;

    margin: 5px 0 8px 15px;

    padding: 7px;

    background: #fafafa;

    border-left: 3px solid #c8a33d;
    border-radius: 6px;

    max-height: 280px;
    overflow-y: auto;

    animation: sitemapOpen 0.25s ease;
}


/* SHOW LEVEL 2 */

.submenu-item:hover > .submenu-level2,
.submenu-item:focus-within > .submenu-level2 {
    display: block;
}


/* =========================================================
   LEVEL 2 LINKS
   ========================================================= */

.submenu-level2 > li > a {
    display: flex;
    align-items: flex-start;

    padding: 9px 12px;

    color: #444;
    text-decoration: none;

    line-height: 1.45;

    border-radius: 5px;

    transition: all 0.2s ease;
}

.submenu-level2 > li > a:hover {
    background: #eeeeee;
    color: #a47e20;
}


/* =========================================================
   LEVEL 3
   ========================================================= */

.submenu-level3 {
    display: none;

    margin: 5px 0 8px 15px;

    padding: 7px;

    background: #fff;

    border-left: 3px solid #999;

    border-radius: 6px;

    max-height: 250px;
    overflow-y: auto;

    box-shadow: inset 0 0 8px rgba(0, 0, 0, 0.04);

    animation: sitemapOpen 0.25s ease;
}


/* SHOW LEVEL 3 */

.submenu-item:hover > .submenu-level3,
.submenu-item:focus-within > .submenu-level3 {
    display: block;
}


/* =========================================================
   LEVEL 3 LINKS
   ========================================================= */

.submenu-level3 > li > a {
    display: block;

    padding: 8px 10px;

    color: #555;

    text-decoration: none;

    line-height: 1.45;

    border-radius: 5px;

    transition: all 0.2s ease;
}

.submenu-level3 > li > a:hover {
    background: #f3f3f3;
    color: #a47e20;
}


/* =========================================================
   SCROLLBAR
   ========================================================= */

.submenu::-webkit-scrollbar,
.submenu-level2::-webkit-scrollbar,
.submenu-level3::-webkit-scrollbar {
    width: 7px;
}

.submenu::-webkit-scrollbar-track,
.submenu-level2::-webkit-scrollbar-track,
.submenu-level3::-webkit-scrollbar-track {
    background: #f1f1f1;
    border-radius: 10px;
}

.submenu::-webkit-scrollbar-thumb,
.submenu-level2::-webkit-scrollbar-thumb,
.submenu-level3::-webkit-scrollbar-thumb {
    background: #c8a33d;
    border-radius: 10px;
}

.submenu::-webkit-scrollbar-thumb:hover,
.submenu-level2::-webkit-scrollbar-thumb:hover,
.submenu-level3::-webkit-scrollbar-thumb:hover {
    background: #a47e20;
}


/* =========================================================
   ANIMATION
   ========================================================= */

@keyframes sitemapOpen {
    from {
        opacity: 0;
        transform: translateY(-5px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}


/* =========================================================
   LONG TEXT FIX
   ========================================================= */

.sitemap-list a {
    word-break: normal;
    overflow-wrap: anywhere;
}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 768px) {

    .sitemap-box {
        display: block;
    }

    .sitemap-column {
        width: 100%;
    }

    .sitemap-list > li.menu-item > .submenu {
        margin-left: 10px;
        max-height: 300px;
    }

    .submenu-level2 {
        margin-left: 8px;
        max-height: 250px;
    }

    .submenu-level3 {
        margin-left: 8px;
        max-height: 220px;
    }
}

.official-content {
	background: #fff;
	padding: 35px;
	border-radius: 10px;
	box-shadow: 0 5px 20px rgba(0, 0, 0, .08);
}

.official-content p {
	text-align: justify;
	font-size: 16px;
	line-height: 1.9;
	color: #555;
}

/* Report Section */
.report-section {
	background: #fff;
	border-radius: 10px;
	overflow: hidden;
	box-shadow: 0 5px 20px rgba(0, 0, 0, .08);
}

.official .report-title {
	background: var(--primary);
	color: #fff;
	font-size: 22px;
	font-weight: 600;
	padding: 18px 25px;
}

.official .report-body {
	padding: 15px;
}

.official .report-item {
	display: flex;
	justify-content: space-between;
	align-items: center;
	text-decoration: none;
	background: #f8f9fa;
	border: 1px solid #e3e3e3;
	border-radius: 8px;
	padding: 15px 20px;
	margin-bottom: 15px;
	color: var(--primary);
}

.official .report-item i {
	margin-right: 10px;
	color: var(--primary);
}

.official .pdf-size {
	font-weight: 600;
	white-space: nowrap;
	margin-left: 15px;
	color: var(--primary);
}

/* Responsive */
@media ( max-width :768px) {
	.official .page-title {
		font-size: 28px;
	}
	.official .official-content {
		padding: 20px;
	}
	.official .report-item {
		flex-direction: column;
		align-items: flex-start;
		gap: 10px;
	}
	.official .pdf-size {
		margin-left: 0;
	}
}


.grievance-section {
	padding: 50px 0;
}
.grievance-card {
	background: #fff;
	border-radius: 12px;
	box-shadow: 0 10px 25px rgba(0, 0, 0, .1);
	overflow: hidden;
}
.grievance-section .card-header-custom {
	background: #a44e00;
	color: #fff;
	padding: 20px;
}
.grievance-section .card-header-custom h3 {
	margin: 0;
	font-size: 25px;
	font-weight: 600;
}

.grievance-section .card-body-custom {
	padding: 35px;
}

.grievance-section .form-label {
	font-weight: 600;
	margin-bottom: 8px;
}

.grievance-section .required {
	color: red;
}

.grievance-section .form-control {
	height: 48px;
	border-radius: 8px;
}

.grievance-section textarea.form-control {
	height: 140px;
	resize: none;
}

.grievance-section .form-select {
	height: 48px;
	border-radius: 8px;
}

.grievance-section .btn-send {
	background: #a44e00;
	color: #fff;
	padding: 12px 35px;
	border: none;
	border-radius: 8px;
	font-size: 18px;
	transition: .3s;
}

.grievance-section .btn-send:hover {
	background: #7f3900;
}

.grievance-section .btn-reset {
	background: #6c757d;
	color: #fff;
	padding: 12px 35px;
	border: none;
	border-radius: 8px;
	font-size: 18px;
}

.grievance-section .btn-reset:hover {
	background: #555;
}

.grievance-section .captcha-box {
	display: flex;
	align-items: center;
	gap: 15px;
}

.grievance-section .captcha {
	background: #eee;
	padding: 12px 25px;
	border-radius: 8px;
	font-size: 22px;
	font-weight: bold;

}

.grievance-section .refresh {
	cursor: pointer;
	color: #a44e00;
	font-size: 24px;
}

.grievance-section .message {
	display: none;
	margin-top: 25px;
	padding: 15px;
	border-radius: 8px;
	font-size: 18px;
}

.grievance-section .success {
	background: #d4edda;
	color: #155724;
	border: 1px solid #c3e6cb;
}

.grievance-section .error {
	background: #f8d7da;
	color: #721c24;
	border: 1px solid #f5c6cb;
}

/* ============ PDF LINKS SECTION (naya add kiya) ============ */
.grievance-section .pdf-links-wrapper {
	padding: 30px 25px;
	border-right: 1px solid #eee;
	height: 100%;
}

.grievance-section .pdf-group {
	margin-bottom: 25px;
	border-radius: 8px;
	overflow: hidden;
	box-shadow: 0 2px 8px rgba(0, 0, 0, .06);
}


.grievance-section .pdf-group-body {
	background: #fff;
}



.grievance-section .pdf-item {
    display: flex;
     align-items: flex-start;
    padding: 12px 15px;
    border-bottom: 1px solid #d9e6ff;
    text-decoration: none;
    color: #1c2b3a;
    gap: 12ppx;
}

.grievance-section .pdf-title {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    flex: 1;                
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis; 
}

.grievance-section .pdf-size {
    margin-left: auto;      
    white-space: nowrap;
    color: #6c757d;
    font-size: 13px;
    flex-shrink: 0;
}


.grievance-section .pdf-title .lang-en,
.grievance-section .pdf-title .lang-hi {
    white-space: normal;
    word-break: break-word;
    line-height: 1.5;
}

.grievance-section label .lang-en, .grievance-section label .lang-hi{float:left;} 
.grievance-section .btn{width:100px; padding:12px;}

.grievance-section .pdf-item:last-child {
	border-bottom: none;
}

.grievance-section .pdf-item:hover {
	background: #d9e6ff;
	color: #0d3b8f;
}

.grievance-section .pdf-item .pdf-title {
	font-size: 14px;
	font-weight: 500;
}

.grievance-section .pdf-item .pdf-size {
	font-size: 12px;
	color: #6c757d;
	white-space: nowrap;
	/* margin-left: 230px; */
	align-items: right;
}

.grievance-section .pdf-item i {
	/* margin-right: 8px;
	color: #a44e00; */
	margin-right: 8px;
    color: #a44e00;
    float: left;
    margin-top: 4px;
    
}


@media ( max-width :768px) {
	.grievance-section .card-body-custom {
		padding: 20px;
	}
	.grievance-section .page-title {
		font-size: 24px;
	}
	.grievance-section .card-header-custom h3 {
		font-size: 22px;
	}
	.grievance-section .pdf-links-wrapper {
		border-right: none;
		border-bottom: 1px solid #eee;
	}
}
/*feedback page */
.feedback-section .feedback-section {
	padding: 50px 0;
}

.feedback-section .feedback-card {
	background: #fff;
	border-radius: 8px;
	box-shadow: 0 5px 20px rgba(0, 0, 0, .1);
	overflow: hidden;
}

.feedback-section .card-header-custom {
	background: #0d6efd;
	color: #fff;
	padding: 16px 25px;
}


.feedback-section .card-body-custom {
	padding: 30px;
}

.feedback-section .required-note {
	color: #333;
	font-size: 14px;
	margin-bottom: 25px;
}

.feedback-section .required-note .required {
	color: red;
}

.feedback-section .form-label {
	font-weight: 600;
	margin-bottom: 6px;
	font-size: 14px;
}

.feedback-section .required {
	color: red;
}

.feedback-section .form-control {
	height: 45px;
	border-radius: 6px;
	background: #f7f7f7;
	border: 1px solid #ccc;
}

.feedback-section textarea.form-control {
	height: 100px;
	resize: none;
	background: #f7f7f7;
}

.feedback-section .form-hint {
	font-size: 12px;
	color: #6c757d;
	margin-top: 4px;
}

.feedback-section label .lang-en, .feedback-section label .lang-hi{float:left;} 
.feedback-section .reload, .feedback-section .captcha{ display:inline;}
.feedback-section .btn-success{padding:12px; min-width:100px;}
.feedback-section .captcha-box {
	/*display: flex;*/
	flex-direction: column;
	align-items: flex-start;
	gap: 10px;
}

.feedback-section .captcha {
	background: #fff;
	border: 1px dashed #999;
	padding: 8px 20px;
	border-radius: 6px;
	font-size: 22px;
	font-weight: bold;
	letter-spacing: 3px;
	font-style: italic;
	display: inline-block;
}

.feedback-section .message {
	display: none;
	margin-top: 25px;
	padding: 15px;
	border-radius: 8px;
	font-size: 15px;
}

.feedback-section .success {
	background: #d4edda;
	color: #155724;
	border: 1px solid #c3e6cb;
}

.feedback-section .error {
	background: #f8d7da;
	color: #721c24;
	border: 1px solid #f5c6cb;
}

.feedback-section .field-error {
	color: #dc3545;
	font-size: 12px;
	margin-top: 4px;
	display: none;
}

@media ( max-width :768px) {
	.feedback-section .card-body-custom {
		padding: 18px;
	}
}

.web .manager-box{
    border:1px solid #ddd;
    border-radius:4px;
    overflow:hidden;
}



.web .manager-body{
    padding:22px;
    font-size:16px;
    line-height:1.6;
}


.web .manager-body p{
    margin-bottom:3px;
}

.web .info_box{
padding-left: 20px;
padding-top: 0px;
margin-top: -10px;

}
.disclaimer .help-card {
	border: 1px solid #dcdcdc;
	border-radius: 3px;
	overflow: hidden;
}

.disclaimer .accordion-button {
	background: #fff;
	font-weight: 600;
	color: #000;
	padding: 12px 15px;
}

.disclaimer .accordion-button:not(.collapsed) {
	background: #fff;
	color: #000;
	box-shadow: none;
}

.disclaimer .accordion-button:focus {
	box-shadow: none;
}

.disclaimer .accordion-item {
	border: 1px solid #ddd;
}

.disclaimer .accordion-body {
	background: #fafafa;
	font-size: 15px;
	line-height: 28px;
}

.disclaimer .accordion-button::after {
	transform: scale(.8);
}
.help .help-card {
	border: 1px solid #dcdcdc;
	border-radius: 3px;
	overflow: hidden;
}

.help .accordion-button {
	background: #fff;
	font-weight: 600;
	color: #000;
	padding: 12px 15px;
}

.help .accordion-button:not(.collapsed) {
	background: #fff;
	color: #000;
	box-shadow: none;
}

.help .accordion-button:focus {
	box-shadow: none;
}

.help .accordion-item {
	border: 1px solid #ddd;
}

.help .accordion-body {
	background: #fafafa;
	font-size: 15px;
	line-height: 28px;
}

.help .accordion-button::after {
	transform: scale(.8);
}

.rti .numbered-point {
    margin: 0 0 2px 0;
    padding-left: 22px;
    text-indent: -22px;
}
.rti .sub-numbered-point {
    margin: 0 0 2px 24px;
    padding-left: 22px;
    text-indent: -22px;
}
.rti .report-name-link {
    color: #000 !important;
    text-decoration: none;
}

.rti .report-name-link:hover {
    color: #000 !important;
    text-decoration: underline;
}

/* CDM-Co2 Baseline Database - Accordion */
.rti .accordion-wrapper { padding: 0 !important; }
.rti .accordion-item { border-bottom: 1px solid #eee; }
.rti .accordion-item:last-child { border-bottom: none; }
.rti .accordion-toggle {
    background: #f5f5f5;
    padding: 10px 16px;
    cursor: pointer;
    font-weight: 500;
    display: flex;
    justify-content: space-between;
    align-items: center;
    user-select: none;
}
.rti .accordion-toggle::after {
    content: "\25BC";
    font-size: 11px;
    margin-left: 10px;
    transition: transform 0.2s;
}
.rti .accordion-toggle.active::after { transform: rotate(180deg); }
.rti .accordion-panel {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.25s ease;
    background: #fff;
    padding: 0 16px;
}
.rti .accordion-panel.open { padding: 12px 16px; }
.rti .list-group li{display: flex;}
.ulrti{margin-top:10px; margin-left:0; padding-left:0; list-style:none;}
.ulrti li{margin-bottom: 8px;}
.rti .no-reports-found{display:none;margin-left:20px;}

.regulation .category-card {
	background: #fff;
	border-radius: 12px;
	padding: 14px 18px;
	margin-bottom: 12px;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
	border-left: 4px solid var(--primary, #ff8000);
	display: block;
	text-decoration: none;
	color: #333;
	transition: all 0.2s ease;
}
.regulation .category-card:hover {
	background: #fff7f0;
	transform: translateX(3px);
	color: var(--primary, #ff8000);
}
.regulation .category-card i.fa-arrow-right {
	margin-right: 8px;
	color: var(--primary, #ff8000);
}
.regulation .fas{
color:var(--primary)!important;
}

.search  .search-wrap {
            max-width: 900px;
            margin: 0 auto;
            padding: 48px 20px 80px;
        }

        .search .search-heading {
            text-align: center;
            color: var(--primary-dark);
            font-size: 22px;
            font-weight: 500;
            margin: 0 0 24px;
        }

        .search .search-heading .highlight-term {
            font-weight: 700;
        }

       .search  .search-no-results {
            background: var(--bg);
            border: 1px solid #F2E6D3;
            border-radius: 8px;
            padding: 20px 24px;
            color: var(--text);
            font-size: 14.5px;
            text-align: center;
        }

       .search  .results-header-bar {
            background: var(--primary-dark);
            color: #fff;
            text-align: center;
            font-weight: 600;
            font-size: 15px;
            padding: 12px 0;
            border-radius: 8px 8px 0 0;
        }

       .search  .search-results-box {
            border: 1px solid #EDE3D3;
            border-top: none;
            border-radius: 0 0 8px 8px;
            overflow: hidden;
            box-shadow: 0 1px 3px rgba(58, 44, 26, 0.04);
        }

       .search  .search-result-item {
            display: flex;
            align-items: flex-start;
            justify-content: space-between;
            gap: 14px;
            padding: 16px 22px;
            border-bottom: 1px solid #F2E6D3;
            background: #fff;
            transition: background 0.15s ease;
        }

       .search  .search-result-item:last-child {
            border-bottom: none;
        }

       .search  .search-result-item:hover {
            background: var(--bg);
        }

        .search .result-title {
            color: var(--text);
            text-decoration: none;
            font-size: 14.5px;
            font-weight: 500;
            flex: 1;
        }

       .search  .result-title-col {
            flex: 1;
            min-width: 0;
        }

       .search  .result-path {
            color: var(--footer);
            font-size: 12px;
            margin-top: 3px;
            display: flex;
            align-items: center;
            gap: 5px;
        }

       .search  .result-path i {
            font-size: 10px;
            color: var(--primary);
        }

       .search  .result-title:hover {
            color: var(--primary-dark);
            text-decoration: none;
        }

       .search  .result-title mark {
            background: var(--primary);
            color: #fff;
            padding: 0 2px;
            border-radius: 3px;
        }

       .search .result-type-badge {
            background: var(--bg);
            color: var(--primary-dark);
            font-size: 11.5px;
            font-weight: 600;
            padding: 4px 12px;
            border-radius: 20px;
            white-space: nowrap;
            flex-shrink: 0;
        }
    

.org-container #container {
	width: 100%;
	height: 1800px;
	background-color: transparent;
	margin-top:-30px;
}

.org-container .member-tooltip {
	width: 430px !important;
	max-width: 430px !important;
	background: #ffffff !important;
	opacity: 1 !important;
	border-radius: 16px;
	box-shadow: 0 10px 30px rgba(31, 42, 68, 0.28);
	border: 1px solid rgba(194, 78, 0, 0.12);
	padding: 14px 20px 12px 20px;
	box-sizing: border-box;
	/*font-family: Arial, Helvetica, sans-serif;*/
	color: #17365D;
	overflow: visible !important;
}

.org-container .member-tooltip-header {
	display: flex;
	align-items: flex-start;
	position: relative;
	width: 100%;
	padding-bottom: 8px;
}

.org-container .member-tooltip-photo {
	width: 68px;
	height: 68px;
	min-width: 68px;
	max-width: 68px;
	border-radius: 50%;
	object-fit: cover;
	border: 2px solid var(--primary);
	box-shadow: 0 2px 8px rgba(194, 78, 0, 0.25);
	margin-right: 14px;
}

.org-container .member-tooltip-info {
	flex: 1 1 auto;
	min-width: 0;
	padding-right: 35px;
	overflow: visible !important;
}

.org-container .member-tooltip-name {
	font-size: 19px;
	font-weight: bold;
	color: #1F2A44;
	line-height: 24px;
	white-space: normal !important;
	overflow: visible !important;
	text-overflow: clip !important;
	word-break: normal;
	overflow-wrap: break-word;
	padding-right: 5px;
}

.org-container .member-tooltip-designation {
	font-size: 14px;
	font-weight: 600;
	color: var(--primary);
	line-height: 20px;
	white-space: normal;
	word-break: normal;
	overflow-wrap: break-word;
}

.org-container .member-tooltip-close {
	position: absolute;
	right: 0;
	top: 0;
	font-size: 28px;
	font-weight: 300;
	color: #999999;
	line-height: 25px;
	cursor: pointer;
	z-index: 10;
}

.org-container .member-tooltip-divider {
	border: 0;
	border-top: 1px solid #F0E4D8;
	margin: 3px 0 0 0;
}

.org-container .member-tooltip-row {
	display: flex;
	min-height: 40px;
	align-items: center;
	border-bottom: 1px solid #F3ECE3;
	font-size: 14px;
}

.org-container .member-tooltip-row:last-child {
	border-bottom: none;
}

.org-container .member-tooltip-label {
	width: 82px;
	min-width: 82px;
	color: #999999;
	font-size: 13px;
	text-transform: uppercase;
	letter-spacing: 0.4px;
}

.org-container .member-tooltip-value {
	flex: 1;
	color: #1F2A44;
	font-size: 14px;
	word-break: break-word;
	overflow-wrap: break-word;
}

.org-container .loading-tooltip .loading-text {
	font-size: 13px;
	color: #999999;
	padding: 6px 2px;
}
.org-container .highcharts-point[fill="#B85C0A"] {
    fill: var(--primary-dark) !important;
}


/* Wing nodes */
.org-container .highcharts-point[fill="#C9824A"] {
    fill: var(--chart3) !important;
}

.org-container .highcharts-data-label:nth-of-type(1)
foreignObject body > div {

    transform: translateY(0px) !important;
    line-height: 50px !important;
    text-align: center !important;
}

.org-container #container:fullscreen,
.org-container #container:-webkit-full-screen {

    width: 100vw !important;
    height: 100vh !important;

    max-width: none !important;
    max-height: none !important;

    margin: 0 !important;
    padding: 20px !important;

    box-sizing: border-box !important;

    overflow: auto !important;

    background: linear-gradient(
        180deg,
        #F6F2EC 0%,
        #EFE7DC 100%
    ) !important;
}

/* Normal screen */
#container .highcharts-node {
    min-height: 40px;
}


#container:fullscreen .highcharts-data-label text {
    font-size: 11px !important;
}

 /* Highcharts Export / Context Menu Button */
.org-container #container .highcharts-exporting-group .highcharts-button {
    cursor: pointer !important;
}

/* Button background */
.org-container #container .highcharts-exporting-group .highcharts-button-box {
    fill: var(--primary-dark) !important;
    stroke: var(--primary) !important;
    stroke-width: 1 !important;
    rx: 6px !important;
    ry: 6px !important;
}

/* Export icon */
.org-container #container .highcharts-exporting-group .highcharts-button-symbol {
    fill: #ffffff !important;
    stroke: #ffffff !important;
}

/* Hover */
.org-container #container .highcharts-exporting-group .highcharts-button:hover
.highcharts-button-box {
    fill:  var(--primary) !important;
    stroke:  var(--primary-dark) !important;
}

.org-container #container .highcharts-exporting-group .highcharts-button:hover
.highcharts-button-symbol {
    fill: #ffffff !important;
    stroke: #ffffff !important;
}

 /* ===== TABLE STYLES ===== */
/*        .document .documents-table {
            width: 100%;
            border-collapse: collapse;
            font-size: 14px;
            box-shadow: 0 2px 12px rgba(0, 0, 0, 0.06);
            border-radius: 12px;
            overflow: hidden;
        }

        .document .documents-table thead th {
            background: var(--primary);
            color: #fff;
            padding: 14px 18px;
            text-align: left;
            font-weight: 600;
            font-size: 14px;
            letter-spacing: 0.3px;
            border: none;
        }

        .document .documents-table thead th:first-child {
            text-align: center;
        }

        .document .documents-table thead th:last-child {
            text-align: center;
        }

        .document .documents-table tbody td {
            padding: 14px 18px;
            vertical-align: middle;
            border-bottom: 1px solid #eef2f7;
            background: #fff;
        }

        .document .documents-table tbody tr:hover td {
            background: #f8fafc;
        }

        .document .documents-table tbody tr:last-child td {
            border-bottom: none;
        }

    
        .document .sno-column {
            width: 60px;
            text-align: center;
            font-weight: 600;
            color: #1a5276;
        }

     
        .document .name-column {
            font-weight: 500;
            color: #2c3e50;
        }

      
        .document .view-column {
            text-align: center;
            min-width: 120px;
        }

        .document .pdf-link {
            display: inline-flex;
            align-items: center;
            gap: 6px;
            color: var(--primary-dark);
            text-decoration: none;
            font-weight: 500;
            font-size: 13px;
            padding: 6px 14px;
            border-radius: 20px;
            background: #eef2f7;
            transition: all 0.3s ease;
        }

        .document .pdf-link:hover {
            background: var(--primary);
            color: #fff;
            text-decoration: none;
            transform: translateY(-1px);
        }

        .document .pdf-link i {
            font-size: 16px;
        }

        .document .pdf-link-en {
            background: #e8f0fe;
            color:var(--primary-dark);
        }

        .document .pdf-link-en:hover {
            background: var(--primary);
            color: #fff!important;
        }

        .document .pdf-link-hi {
            background: #fef3e8;
            color: var(--primary-dark);;
        }

        .document .pdf-link-hi:hover {
            background: var(--primary);
            color: #fff!important;
        }

       .document .view-divider {
            display: inline-block;
            margin: 0 4px;
            color: #ddd;
        }

      
        .document .loading-spinner {
            text-align: center;
            padding: 60px 20px;
        }

        .document .loading-spinner .spinner {
            width: 50px;
            height: 50px;
            border: 4px solid #e9ecef;
            border-top: 4px solid var(--primary);
            border-radius: 50%;
            animation: spin 0.8s linear infinite;
            margin: 0 auto 15px;
        }

        @keyframes .document spin {
            0% { transform: rotate(0deg); }
            100% { transform: rotate(360deg); }
        }

        .document .loading-spinner p {
            color: #888;
            font-size: 15px;
        }

       
        .document .no-documents {
            text-align: center;
            padding: 60px 20px;
            color: #888;
        }

        .document .no-documents i {
            font-size: 56px;
            color: #ddd;
            margin-bottom: 20px;
        }

       .document  .no-documents h5 {
            color: #555;
            font-size: 18px;
            margin-bottom: 8px;
        }

        .document .no-documents p {
            font-size: 14px;
        }

    
        @media (max-width: 768px) {
            .document .documents-title {
                font-size: 22px;
            }

            .document .documents-table {
                font-size: 13px;
            }

            .document .documents-table thead th,
            .document .documents-table tbody td {
                padding: 10px 12px;
            }

           .document  .sno-column {
                width: 40px;
            }

            .document .view-column {
                min-width: 80px;
            }

            .document .pdf-link {
                font-size: 11px;
                padding: 4px 10px;
            }

            .document .pdf-link i {
                font-size: 13px;
            }
        }

        @media (max-width: 480px) {
            .document .documents-table thead th,
            .document .documents-table tbody td {
                padding: 8px 8px;
                font-size: 12px;
            }

            .document .sno-column {
                width: 30px;
            }

            .document .pdf-link {
                font-size: 10px;
                padding: 3px 8px;
                gap: 4px;
            }

            .document .pdf-link i {
                font-size: 11px;
            }

           .document .view-divider {
                display: none;
            }
        }
        
       */
       .documents-table {
            width: 100%;
            border-collapse: collapse;
            /*font-size: 14px;*/
            box-shadow: 0 2px 12px rgba(0, 0, 0, 0.06);
            border-radius: 12px;
            overflow: hidden;
        }


        /* =========================================================
           TABLE HEADER
        ========================================================= */

        .documents-table thead th {
            background: var(--primary);
            color: #fff;
            padding: 14px 18px;
            text-align: left;
            font-weight: 600;
            font-size: 14px;
            letter-spacing: 0.3px;
            border: none;
        }

        .documents-table thead th:first-child,
        .documents-table thead th:nth-child(3),
        .documents-table thead th:nth-child(4),
        .documents-table thead th:nth-child(5) {
            text-align: center;
        }


        /* =========================================================
           TABLE BODY
        ========================================================= */

        .documents-table tbody td {
            padding: 10px 12px;
            vertical-align: middle;
            border-bottom: 1px solid #eef2f7;
            background: #fff;
        }

        .documents-table tbody tr:hover td {
            background: #f8fafc;
        }

        .documents-table tbody tr:last-child td {
            border-bottom: none;
        }


        /* =========================================================
           COLUMN WIDTH
        ========================================================= */

       .document .sno-column {
            width: 7%;
            text-align: center;
            font-weight: 600;
            color: #1a5276;
        }

       .document .name-column {
            width: 53%;
            
        }

       .document .download-column {
            width: 13%;
            text-align: center;
        }

        .document .view-column {
            width: 13%;
            text-align: center;
        }

        .document .details-column {
            width: 14%;
            text-align: center;
        }


        /* =========================================================
           ACTION BUTTON
        ========================================================= */

        .document .action-btn {
            display: inline-flex;
            align-items: center;
            justify-content: center;

            gap: 7px;

            min-width: 90px;

            padding: 7px 14px;

            border-radius: 20px;

            text-decoration: none;

            border: none;

            cursor: pointer;

            font-size: 13px;

            font-weight: 500;

            transition: all 0.3s ease;
        }


        .document .action-btn i {
            font-size: 14px;
        }


        /* =========================================================
           DOWNLOAD BUTTON
        ========================================================= */

       .document .download-btn {
            background: #e8f0fe;
            color: var(--primary-dark);
        }

        .document .download-btn:hover {
            background: var(--primary);
            color: #fff !important;
            text-decoration: none;
            transform: translateY(-1px);
        }


        /* =========================================================
           VIEW BUTTON
        ========================================================= */

        .document .view-btn {
            background: #fef3e8;
            color: var(--primary-dark);
        }

        .document .view-btn:hover {
            background: var(--primary);
            color: #fff !important;
            text-decoration: none;
            transform: translateY(-1px);
        }


        /* =========================================================
           FILE DETAILS BUTTON
        ========================================================= */

        .document .details-btn {
            min-width: 42px;
            width: 42px;
            height: 42px;

            padding: 0;

            border-radius: 50%;

            background: #fef3e8;

            color: var(--primary);
        }

        .document .details-btn:hover {
            background: var(--primary);
            color: #fff;

            transform: translateY(-1px);
        }


        /* =========================================================
           FILE DETAILS MODAL
        ========================================================= */

        .document .file-details-modal {
            display: none;

            position: fixed;

            top: 0;
            left: 0;

            width: 100%;
            height: 100%;

            background: rgba(0, 0, 0, 0.45);

            z-index: 9999;

            align-items: center;
            justify-content: center;

            padding: 20px;
        }


        .document .file-details-box {
            background: #fff;

            width: 100%;
            max-width: 500px;

            border-radius: 12px;

            box-shadow: 0 10px 35px rgba(0, 0, 0, 0.2);

            overflow: hidden;
        }


        .document .file-details-header {
            background: var(--primary);

            color: #fff;

            padding: 15px 20px;

            display: flex;

            justify-content: space-between;

            align-items: center;
        }


        .document .file-details-header strong {
            font-size: 17px;
        }


        .document .close-details {
            background: transparent;

            border: none;

            color: #fff;

            font-size: 25px;

            cursor: pointer;
        }


        .document .file-details-body {
            padding: 20px;

            color: #333;

            line-height: 1.7;
        }


        .document .detail-row {
            margin-bottom: 12px;
        }


        .document .detail-label {
            font-weight: 600;

            color: var(--primary-dark);
        }


        /* =========================================================
           LOADING SPINNER
        ========================================================= */

        .document .loading-spinner {
            text-align: center;

            padding: 60px 20px;
        }


        .document .loading-spinner .spinner {
            width: 50px;
            height: 50px;

            border: 4px solid #e9ecef;

            border-top: 4px solid var(--primary);

            border-radius: 50%;

            animation: spin 0.8s linear infinite;

            margin: 0 auto 15px;
        }


        @keyframes spin {

            0% {
                transform: rotate(0deg);
            }

            100% {
                transform: rotate(360deg);
            }

        }


        .document .loading-spinner p {
            color: #888;

            font-size: 15px;
        }


        /* =========================================================
           NO DOCUMENTS
        ========================================================= */

        .document .no-documents {
            text-align: center;

            padding: 60px 20px;

            color: #888;
        }


        .document .no-documents i {
            font-size: 56px;

            color: #ddd;

            margin-bottom: 20px;
        }


        .document .no-documents h5 {
            color: #555;

            font-size: 18px;

            margin-bottom: 8px;
        }


        .document .no-documents p {
            font-size: 14px;
        }


        /* =========================================================
           RESPONSIVE
        ========================================================= */

        @media (max-width: 768px) {

            .document .documents-table {
                font-size: 13px;
            }


            .document .documents-table thead th,
            .document .documents-table tbody td {
                padding: 10px 8px;
            }


            .document .action-btn {
                min-width: 70px;

                padding: 6px 9px;

                font-size: 11px;
            }


            .document .details-btn {
                min-width: 35px;

                width: 35px;

                height: 35px;
            }


            .document .action-btn i {
                font-size: 12px;
            }

        }


        @media (max-width: 480px) {

            .document .documents-table {
                font-size: 11px;
            }


            .documents-table thead th,
            .documents-table tbody td {
                padding: 8px 5px;
            }


            .document .action-btn {
                min-width: 55px;

                padding: 5px 6px;

                font-size: 10px;

                gap: 4px;
            }


           .document .details-btn {
                min-width: 30px;

                width: 30px;

                height: 30px;
            }


            .document .action-btn i {
                font-size: 10px;
            }

        } 
        
        
  .tender .tender-table th { font-weight: 600; }

        .tender .btn-saffron {
            background-color: var(--primary);
            border-color: var(--primary);
            color: #fff!important;
            font-weight: 600;
        }
       .tender  .btn-saffron:hover { background-color: var(--primary)!important; border-color: var(--primary-dark); color: #fff!important; }
       .tender  .btn-saffron.active { background-color: var(--primary-dark); border-color: var(--primary); }

        /* Hidden unless archiveMode adds .show — confirmed working: default page load never adds this class */
        .tender #yearCalendarPanel { display: none; }
        .tender #yearCalendarPanel.show { display: block; }

        .tender .year-picker-bar { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
        .tender .year-picker-input-wrap { position: relative; }
      
        .tender #yearPickerInput { width: 180px; cursor: pointer; background: #fff; }
        .tender #yearPickerInput:focus { border-color: var(--primary); box-shadow: 0 0 0 3px rgba(255, 119, 34, 0.15); }

        .tender .year-dropdown {
            display: none;
            position: absolute;
            top: 105%;
            left: 0;
            z-index: 20;
            width: 300px;
            background: #fff;
            border: 1px solid #E5D5C5;
            border-radius: 8px;
            box-shadow: 0 8px 24px rgba(11, 37, 69, 0.15);
            overflow: hidden;
        }
        .tender .year-dropdown.show { display: block; }

        .tender .year-dropdown-header {
            display: flex;
            align-items: center;
            justify-content: space-between;
            background: var(--primary-dark);
            color: #fff;
            padding: 10px 14px;
            font-weight: 700;
        }

        .tender .decade-nav {
            background: transparent;
            border: none;
            color: #fff;
            font-size: 18px;
            font-weight: 700;
            cursor: pointer;
            padding: 0 6px;
            line-height: 1;
        }
        .tender .decade-nav:hover { opacity: 0.75; }
        .tender .decade-nav:disabled { opacity: 0.3; cursor: not-allowed; }

        .tender .year-grid-dropdown {
            display: grid;
            grid-template-columns: repeat(3, 1fr);
            gap: 8px;
            padding: 14px;
        }

       .tender .year-grid-dropdown .year-option {
            background: #FFF3E9;
            border: 1px solid #FFD9B8;
            border-radius: 6px;
            padding: 10px 4px;
            text-align: center;
            font-weight: 600;
            color: var(--navy);
            cursor: pointer;
            transition: all 0.15s ease;
        }
       .tender  .year-grid-dropdown .year-option:hover { border-color: var(--saffron); background: #FFE7D2; }
        .tender .year-grid-dropdown .year-option.selected {
            background: var(--primary-dark);
            border-color: var(--primary-dark);
            color: #fff;
        }
        /* Future years — visible for context but not selectable */
       .tender  .year-grid-dropdown .year-option.future-disabled {
            background: #F3F3F3;
            border-color: #E0E0E0;
            color: #B0B0B0;
            cursor: not-allowed;
            pointer-events: none;
        }

        .tender .archive-badge {
            display: inline-block;
            background: #222;
            color: #fff;
            font-size: 11px;
            font-weight: 700;
            padding: 3px 10px;
            border-radius: 12px;
            margin-bottom: 12px;
        }
             /* ===== Report page archive toggle (same look as Tenders' toggle above) ===== */
        .datereport .archive-toggle-row { display:flex; justify-content:space-between; align-items:center; margin-bottom:10px; flex-wrap:wrap; gap:8px; width:100%; }
        .datereport #archiveToggleBtn { margin-left:auto; }
        .datereport .archive-badge { display:inline-block; background:#222; color:#fff; font-size:11px; font-weight:700; padding:3px 10px; border-radius:12px; }
        .datereport .btn-saffron { background-color: var(--primary); border-color: var(--primary); color:#fff!important; font-weight:600; }
        .datereport .btn-saffron:hover { background-color: var(--primary)!important; border-color: var(--primary-dark); color:#fff!important; }
        /* "All X" clear button — same idea as Tenders' "All Years" button */
        .datereport .btn-filter-outline { padding:6px 14px; border:1px solid var(--primary); border-radius:4px; font-size:13px; font-weight:600; cursor:pointer; background:#fff; color: var(--primary); }
        .datereport .btn-filter-outline:hover { background:#FFF3E9; }   
        
 /* login page */ 
 .login_bg1 {
	background-image: url('../images/cea-login-bg.jpg');
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	width: 100%;
	min-height: 100vh;
}

.login .login-section {
	padding: 60px 20px;
	min-height: 100vh;
	display: flex;
	align-items: center;
}

.login .login-card {
	background: white;
	padding: 40px 30px;
	border-radius: 12px;
	box-shadow: 0 10px 30px rgba(0, 100, 80, 0.1);
	max-width: 480px;
	width: 100%;
	margin: auto;
}

.login .btn-primary {
	background-color: #ff7a18;
	border: none;
	transition: all 0.3s;
}

.login .btn-primary:hover {
	background-color: #1b5e20;
	transform: translateY(-2px);
}

.login .login-div {
	display: flex;
	z-index: 2;
	width: 100%;
	margin: 0 auto;
	align-items: center;
	gap: 15px;
	margin-bottom: 20px;
}

.login .login-div .nic-logo {
	height: 80px;
	width: 80px;
	object-fit: contain;
}

.login .login-div div {
	width: 100%;
	margin: 0 auto;
}

.login .login-div h4 {
	font-size: 14px;
	margin-top: 0px;
	font-weight: bold;
	color: #5d4037;
}

.login .login-div h1 {
	font-size: 22px;
	font-weight: bold;
	color: #d37d4f;
	margin: 5px 0 0 0;
}

.login .form-label {
	margin-bottom: .5rem;
	font-weight: 600;
	color: #2c5f2d;
}

.login .form-control {
	border-radius: 8px;
	border: 1px solid #ddd;
	padding: 10px 15px;
}

.login .form-control:focus {
	border-color: #daa149;
	box-shadow: 0 0 0 0.2rem rgba(218, 161, 73, 0.25);
}

.login #login-form {
	margin-top: 20px;
}

.login .capchaset {
	display: inline-block;
	margin-left: 10px;
	vertical-align: middle;
}

.login #captchaInput {
	width: 100%;
}

.login .captcha-container {
	background: #f8f9fa;
	border-radius: 10px;
	padding: 15px;
	margin-top: 10px;
}

.login #captchaCanvas {
	border-radius: 8px;
	border: 1px solid #cfd8dc;
	background: #fff;
	box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
}

.login .btn-link {
	text-decoration: none;
	padding: 8px 12px;
}

.login .btn-link:hover {
	background-color: #e9ecef;
	border-radius: 50%;
}

.login .invalid-feedback {
	display: none;
	font-size: 12px;
}

.login .is-invalid {
	border-color: #dc3545;
}

.login .is-invalid ~.invalid-feedback {
	display: block;
}

.login .alert-demo {
	background-color: #e3f2fd;
	border-left: 4px solid #2196f3;
	color: #0d47a1;
	padding: 12px 15px;
	border-radius: 8px;
	margin-bottom: 20px;
	font-size: 13px;
}

.login .invalid-feedback {
	display: none;
	color: red;
	font-size: 14px;
}

.login .is-invalid+.invalid-feedback {
	display: block;
}

    .login .forgot-password-link {
        color: #FFA500; /* Light orange default color */
        text-decoration: none;
        font-size: 0.875rem; /* Small size */
        transition: all 0.3s ease; /* Smooth transition for hover effects */
        position: relative;
        padding-bottom: 2px;
    }
    
    /* Hover effect for forgot password link */
    .login .forgot-password-link:hover {
        color: #FF6B00; /* Darker orange on hover */
        text-decoration: none;
        transform: translateY(-1px); /* Slight lift effect */
    }
    
    /* Optional: Underline animation on hover */
    .login .forgot-password-link::after {
        content: '';
        position: absolute;
        width: 0;
        height: 2px;
        bottom: 0;
        left: 0;
        background-color: #FF6B00;
        transition: width 0.3s ease;
    }
    
   .login  .forgot-password-link:hover::after {
        width: 100%;
    }

@media ( max-width : 576px) {
	.login .login-card {
		padding: 30px 20px;
	}
	.login .login-div h1 {
		font-size: 18px;
	}
}    

.vigcontact .contact-box{
    margin-top:30px;
    margin-bottom:50px;
}

.vigcontact .contact-card{
    margin-bottom:55px;
    background: #fff;
    padding: 30px 35px;
    border-radius: 12px;
    box-shadow: 0 4px 20px rgba(0,0,0,0.08);
    border-left: 5px solid var(--primary);
}

.vigcontact .contact-card p{
    margin-bottom:8px;
    font-size:18px;
}

.vigcontact .contact-name{
    font-size:26px;
    font-weight:700;
    color:  var(--primary-dark);
    margin-bottom:4px !important;
}

.vigcontact .contact-title{
    font-weight:600;
    color: #444;
    margin-bottom:12px !important;
}

.vigcontact .contact-label{
    font-weight:600;
    color: #555;
    min-width: 70px;
    display: inline-block;
}

.vigcontact .loading-text {
    text-align: center;
    padding: 40px;
    font-size: 18px;
    color: #666;
}

.vigcontact .error-text {
    text-align: center;
    padding: 40px;
    font-size: 18px;
    color:  var(--primary);
}

.vigcontact .loading-spinner {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 40px;
    gap: 15px;
}

.vigcontact .loading-spinner .spinner {
    width: 40px;
    height: 40px;
    border: 4px solid #e0e0e0;
    border-top: 4px solid  var(--primary);
    border-radius: 50%;
    animation: spin 1s linear infinite;
}

@keyframes spin {  0% { transform: rotate(0deg); }   100% { transform: rotate(360deg); }}

@media(max-width:768px){
    .vigcontact .contact-card {
        padding: 20px;
    }
    .vigcontact .contact-card p{
        font-size: 15px;
    }
   .vigcontact .contact-name{
        font-size: 20px;
    }
}

.gal .gallery-section{
    padding:5px 20px;
}

.gal .container{
    width:95%;
    max-width:1200px;
    margin:auto;
}

.gal .gallery-title{

    text-align:center;
    font-size:42px;
    font-weight:500;
    color:#222;
    margin-bottom:30px;

}

.gal .gallery-wrapper{

    border:1px solid #d7d7d7;
    background:#fff;
    padding:5px;
    overflow-x:auto;

}

/* Hide scrollbar */

.gal .gallery-wrapper::-webkit-scrollbar{
    height:6px;
}

.gal .gallery-wrapper::-webkit-scrollbar-thumb{
    background:#999;
}

.gal .gallery{

    display:grid;
    grid-template-columns:repeat(5,1fr);
    gap:10px;
    min-width:1000px;

}

.gal .gallery-item{

    display:block;
    overflow:hidden;
    border:1px solid #ddd;

}

.gal .gallery-item img{

    width:100%;
    height:220px;
    object-fit:cover;
    transition:.4s;

}

.gallery-section #prev,
.gallery-section #next {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 9999;

    width: 45px;
    height: 45px;

    display: flex;
    align-items: center;
    justify-content: center;

    border: none;
    border-radius: 50%;
    cursor: pointer;

    pointer-events: auto;
}

.gallery-section #prev {
    left: 15px;
}

.gallery-section #next {
    right: 15px;
}

/* ------------ Tablet ------------ */

@media(max-width:992px){

.gal .gallery-title{
    font-size:36px;
}

.gal .gallery-item img{
    height:200px;
}

}


/* ------------ Mobile ------------ */

@media(max-width:768px){

.gal .gallery-title{
    font-size:30px;
    margin-bottom: -30px;
}

.gal .gallery{

    min-width:850px;
    gap:8px;

}

.gal .gallery-item img{

    height:180px;

}

}


/* Small Mobile */

@media(max-width:480px){

.gal .gallery-title{

    font-size:26px;

}

.gal .gallery{

    min-width:700px;

}

.gal .gallery-item img{

    height:150px;

}

}


.displaynone {
    display: none;
    }
 		#committeeSection {
			display: none;
			margin-bottom: 20px;
		}

		#committeeHeader {
			cursor: pointer;
			padding: 10px 12px;
			font-size: 16px;
			font-weight: 600;
			border-left: 3px solid #c76b29;
			background: #faf5f0;
			color: #000;
		} 

		.divpage .numbered-point {
    margin: 0 0 2px 0;
    padding-left: 22px;
    text-indent: -22px;
}
.divpage .sub-numbered-point {
    margin: 0 0 2px 24px;
    padding-left: 22px;
    text-indent: -22px;
}
.divpage .report-name-link {
    color: #000 !important;
    text-decoration: none;
}

.divpage .report-name-link:hover {
    color: #000 !important;
    text-decoration: underline;
}

/* CDM-Co2 Baseline Database - Accordion */
.divpage .accordion-wrapper { padding: 0 !important; }
.divpage .accordion-item { border-bottom: 1px solid #eee; }
.divpage .accordion-item:last-child { border-bottom: none; }
.divpage .accordion-toggle {
    background: #f5f5f5;
    padding: 10px 16px;
    cursor: pointer;
    font-weight: 500;
    display: flex;
    justify-content: space-between;
    align-items: center;
    user-select: none;
}
.divpage .accordion-toggle::after {
    content: "\25BC";
    font-size: 11px;
    margin-left: 10px;
    transition: transform 0.2s;
}
.divpage .accordion-toggle.active::after { transform: rotate(180deg); }
.divpage .accordion-panel {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.25s ease;
    background: #fff;
    padding: 0 16px;
}
.divpage .accordion-panel.open { padding: 12px 16px; }

/* ===== Rules moved out of inline style="" attributes so they work under a
   style-src 'self' CSP (no 'unsafe-inline' / nonce on style attributes) ===== */

.divpage .cursor-pointer { cursor: pointer; }

.divpage .js-open-heading-report,
.divpage .js-open-link-report {
    cursor: pointer;
}

.divpage .subheading-toggle {
    cursor: pointer;
}

.divpage .subheading-li {
    display: block !important;
    width: 100%;
    overflow: hidden;
}

.divpage .subheading-report-list {
    display: none !important;
    clear: both;
    width: 100%;
    margin-left: 20px;
    margin-top: 8px;
}

.divpage .sub-sub-heading-container {
    margin-top: 12px;
    display: block;
    width: 100%;
}

.divpage .sub-sub-heading-block {
    display: block;
    width: 100%;
    margin-bottom: 6px;
}

.divpage .subsub-toggle-btn {
    display: block;
    width: 100%;
    padding: 8px 14px;
    background: #fff;
    border: 1px solid #e5c7a8;
    border-radius: 4px;
    cursor: pointer;
    font-weight: 500;
    color: #000;
}

.divpage .subsub-report-list {
    display: none;
    margin: 6px 0 0 20px;
}

.divpage .no-reports-found {
    display: none;
    margin-left: 20px;
}

.divpage .report-item-spacing {
    margin-bottom: 6px;
    overflow: hidden;
}

.divpage .sub-heading-container {
    margin: 5px 5px;
    padding: 5px 5px;
}

.divpage .sub-heading-title {
    margin-top: 16px;
    margin-bottom: 6px;
}

.divpage .subheading-empty-note {
    margin-left: 20px;
}

.divpage .heading-reports-list {
    margin-top: 10px;
    margin-left: 0;
    padding-left: 0;
    list-style: none;
}

.divpage .heading-report-item {
    margin-bottom: 8px;
}

.divpage .cdm-co2-item {
    padding: 10px 15px;
}
.reports-wrapper {
            max-width: 1200px;
            margin: 0 auto;
        }

        .reports-wrapper .month-filter-bar {
            display: flex;
            align-items: center;
            gap: 10px;
            margin-bottom: 18px;
            flex-wrap: wrap;
        }

        .reports-wrapper .month-filter-bar label {
            font-weight: 600;
            margin-bottom: 0;
            white-space: nowrap;
        }

        .reports-wrapper #monthYearSelect {
            max-width: 160px;
            cursor: pointer;
            background-color: #fff;
        }

        .reports-wrapper .month-picker-wrapper {
            position: relative;
            display: inline-block;
        }

        .reports-wrapper .month-picker-dropdown {
            display: none;
            position: absolute;
            top: calc(100% + 4px);
            left: 0;
            z-index: 1000;
            width: 260px;
            background: #ffffff;
            border: 1px solid #dee2e6;
            border-radius: 6px;
            box-shadow: 0 6px 18px rgba(0, 0, 0, 0.15);
            padding: 10px 12px 14px;
        }

        .reports-wrapper .month-picker-dropdown.open {
            display: block;
        }

        .reports-wrapper .month-picker-year-nav {
            display: flex;
            align-items: center;
            justify-content: space-between;
            padding: 4px 4px 10px;
            font-weight: 700;
            font-size: 1.05rem;
        }

        .reports-wrapper .month-picker-year-nav button {
            border: none;
            background: transparent;
            font-size: 1.1rem;
            font-weight: 700;
            color: var(--primary);
            cursor: pointer;
            padding: 2px 8px;
            border-radius: 4px;
        }

        .reports-wrapper .month-picker-year-nav button:hover {
            background-color: #eef3f8;
        }

        .reports-wrapper .month-picker-grid {
            display: grid;
            grid-template-columns: repeat(4, 1fr);
            gap: 6px 4px;
        }

        .reports-wrapper .month-picker-grid button {
            border: none;
            background: transparent;
            color: var(--primary);
            font-weight: 600;
            padding: 8px 4px;
            border-radius: 5px;
            cursor: pointer;
            font-size: 0.92rem;
        }

        .reports-wrapper .month-picker-grid button:hover {
            background-color: #eef3f8;
        }

        .reports-wrapper .month-picker-grid button.selected {
            background-color: var(--primary);
            color: #ffffff;
        }

        .reports-wrapper .reports-table-card {
            border: 1px solid #dee2e6;
            border-radius: 6px;
            overflow: hidden;
        }

        .reports-wrapper .section-header {
            background-color: var(--primary-dark);
            color: #ffffff;
            padding: 10px 15px;
            font-weight: 600;
            border-radius: 5px 5px 0 0;
            border-left: 6px var(--secondary) solid;
            text-align: center;
            font-size: 1.05rem;
        }

        .reports-wrapper .reports-table {
            width: 100%;
            table-layout: fixed;
            margin-bottom: 0;
        }

        .reports-wrapper .reports-table th,
        .reports-wrapper .reports-table td {
            vertical-align: middle;
            text-align: center;
        }

        .reports-wrapper .reports-table thead th {
            background-color: #d9d9d9;
            font-weight: 700;
            border-bottom: 2px solid #c7c7c7;
        }

        .reports-wrapper .reports-table tbody tr:nth-child(even) {
            background-color: #f7f9fb;
        }

        .reports-wrapper .reports-table th:nth-child(1),
        .reports-wrapper .reports-table td:nth-child(1) {
            width: 8%;
        }

        .reports-wrapper .reports-table th:nth-child(2),
        .reports-wrapper .reports-table td:nth-child(2) {
            width: 30%;
            text-align: left;
        }

        .reports-wrapper .reports-table th:nth-child(3),
        .reports-wrapper .reports-table td:nth-child(3) {
            width: 15%;
        }

        .reports-wrapper .reports-table th:nth-child(4),
        .reports-wrapper .reports-table td:nth-child(4) {
            width: 24%;
        }

        .reports-table th:nth-child(5),
        .reports-table td:nth-child(5) {
            width: 23%;
        }

        .reports-wrapper .report-serial {
            font-weight: 600;
            color: var(--primary);
        }

        .reports-wrapper .report-name-link {
            color: var(--primary);
            font-weight: 600;
            text-decoration: none;
        }

        .reports-wrapper .report-name-link:hover {
            text-decoration: underline;
        }

        .reports-wrapper .report-name-text {
            font-weight: 600;
            color: #444;
        }

        .reports-wrapper .file-action-link {
            color: var(--primary);
            text-decoration: none;
            margin: 0 4px;
        }

       .reports-wrapper .file-action-link:hover {
            opacity: 0.7;
        }

        .reports-wrapper .file-size-tag {
            font-size: 0.75rem;
            color: #6c757d;
        }

        .reports-wrapper .no-file-dash {
            color: #adb5bd;
        }

        .reports-wrapper .no-reports {
            text-align: center;
            padding: 40px 15px;
        }

        .reports-wrapper .no-reports i {
            font-size: 2.2rem;
            margin-bottom: 10px;
            display: block;
        }
        
        .gov-eng, .gov-eng2{color:#fff!important;}
        

.forgot .login-section {
	padding: 60px 20px;
	min-height: 100vh;
	display: flex;
	align-items: center;
}

.forgot .login-card {
	background: white;
	padding: 40px 30px;
	border-radius: 12px;
	box-shadow: 0 10px 30px rgba(0, 100, 80, 0.1);
	max-width: 480px;
	width: 100%;
	margin: auto;
}

.forgot .btn-primary {
	background-color: #ff7a18;
	border: none;
	transition: all 0.3s;
}

.forgot .btn-primary:hover {
	background-color: #1b5e20;
	transform: translateY(-2px);
}

.forgot .login-div {
	display: flex;
	z-index: 2;
	width: 100%;
	margin: 0 auto;
	align-items: center;
	gap: 15px;
	margin-bottom: 20px;
}

.forgot .login-div .nic-logo {
	height: 80px;
	width: 80px;
	object-fit: contain;
}

.forgot .login-div div {
	width: 100%;
	margin: 0 auto;
}

.forgot .login-div h4 {
	font-size: 14px;
	margin-top: 0px;
	font-weight: bold;
	color: #5d4037;
}

.forgot .login-div h1 {
	font-size: 22px;
	font-weight: bold;
	color: #d37d4f;
	margin: 5px 0 0 0;
}

.forgot .page-subtitle {
	font-size: 14px;
	color: #6c757d;
	margin-bottom: 20px;
}

.forgot .form-label {
	margin-bottom: .5rem;
	font-weight: 600;
	color: #2c5f2d;
}

.forgot .form-control {
	border-radius: 8px;
	border: 1px solid #ddd;
	padding: 10px 15px;
}

.forgot .form-control:focus {
	border-color: #daa149;
	box-shadow: 0 0 0 0.2rem rgba(218, 161, 73, 0.25);
}

.forgot .capchaset {
	display: inline-block;
	margin-left: 10px;
	vertical-align: middle;
}

.forgot .captcha-container {
	background: #f8f9fa;
	border-radius: 10px;
	padding: 15px;
	margin-top: 10px;
}

.forgot .captcha-image {
	border-radius: 8px;
	border: 1px solid #cfd8dc;
	background: #fef9e8;
	box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
	display: block;
}

.forgot .btn-link {
	text-decoration: none;
	padding: 8px 12px;
}

.forgot .btn-link:hover {
	background-color: #e9ecef;
	border-radius: 50%;
}

.forgot .invalid-feedback {
	display: none;
	color: red;
	font-size: 14px;
}

.forgot .is-invalid+.invalid-feedback,
.forgot .is-invalid ~ .invalid-feedback {
	display: block;
}

.forgot .alert-demo {
	background-color: #e3f2fd;
	border-left: 4px solid #2196f3;
	color: #0d47a1;
	padding: 12px 15px;
	border-radius: 8px;
	margin-bottom: 20px;
	font-size: 13px;
}

@media ( max-width : 576px) {
	.forgot .login-card {
		padding: 30px 20px;
	}
	.forgot .login-div h1 {
		font-size: 18px;
	}
}

 .archive-box {
            background: #fff;
            border: 1px solid #EDE3D3;
            border-radius: 12px;
            margin-bottom: 18px;
            overflow: hidden;
            box-shadow: 0 1px 3px rgba(58, 44, 26, 0.04);
            transition: box-shadow 0.2s ease, border-color 0.2s ease;
        }

        .archive-box.open {
            border-color: var(--primary);
            box-shadow: 0 6px 18px rgba(255, 153, 51, 0.14);
        }

        .archive-box-header {
            display: flex;
            align-items: center;
            justify-content: space-between;
            padding: 20px 24px;
            cursor: pointer;
            user-select: none;
        }

        .archive-box-header:hover {
            background: var(--bg);
        }

        .archive-box-title {
            display: flex;
            align-items: center;
            gap: 14px;
        }

        .archive-icon {
            width: 40px;
            height: 40px;
            border-radius: 10px;
            background: var(--bg);
            color: var(--primary);
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 17px;
            flex-shrink: 0;
        }

        .archive-box.open .archive-icon {
            background: var(--primary);
            color: #fff;
        }

        .archive-box-title h2 {
            font-size: 16px;
            font-weight: 600;
            margin: 0;
        }

        .archive-box-title span.sub {
            display: block;
            font-size: 12.5px;
            font-weight: 400;
            margin-top: 2px;
        }

        .archive-chevron {
            transition: transform 0.25s ease;
            font-size: 14px;
        }

        .archive-box.open .archive-chevron {
            transform: rotate(180deg);
            color: var(--primary-dark);
        }

        .archive-box-body {
            max-height: 0;
            overflow-y: auto;
            overflow-x: hidden;
            transition: max-height 0.3s ease;
            border-top: 1px solid transparent;
        }

        .archive-box.open .archive-box-body {
            border-top: 1px solid #F2E6D3;
            max-height: 480px !important;
        }

        .archive-links {
            padding: 8px 24px 20px 78px;
            display: flex;
            flex-direction: column;
            gap: 4px;
        }

        .archive-link {
            display: flex;
            align-items: center;
            gap: 10px;
            padding: 12px 14px;
            border-radius: 8px;
            color: var(--ink);
            text-decoration: none;
            font-size: 14.5px;
            font-weight: 500;
            transition: background 0.15s ease, padding-left 0.15s ease;
        }

        .archive-link:hover {
            background: var(--bg);
            color: var(--primary-dark);
            padding-left: 18px;
            text-decoration: none;
        }

        .archive-link i.fa-chevron-right {
            font-size: 10px;
            color: var(--primary);
        }

        /* Nested sub-sub-heading accordion (e.g. Quarterly -> Solar Parks, Thermal Review, etc.) */
        .archive-sub-item {
            border-radius: 8px;
        }

        .archive-sub-toggle {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 10px;
            padding: 12px 14px;
            border-radius: 8px;
            color: var(--primary-dark);
            font-size: 14.5px;
            font-weight: 500;
            cursor: pointer;
            user-select: none;
            transition: background 0.15s ease;
        }

        .archive-sub-toggle:hover {
            background: var(--bg);
            color: var(--primary-dark);
        }

        .archive-sub-toggle .archive-sub-caret {
            font-size: 11px;
            color: var(--muted);
            transition: transform 0.2s ease;
        }

        .archive-sub-item.open .archive-sub-toggle .archive-sub-caret {
            transform: rotate(180deg);
            color: var(--primary-dark);
        }

        .archive-sub-body {
            max-height: 0;
            overflow-y: auto;
            overflow-x: hidden;
            transition: max-height 0.25s ease;
        }

        .archive-sub-item.open .archive-sub-body {
            border-left: var(--primary);
            margin-left: 14px;
            max-height: 280px !important;
        }

        .archive-sub-links {
            display: flex;
            flex-direction: column;
            gap: 2px;
            padding: 4px 0 8px 18px;
        }

        .archive-sub-link {
            display: flex;
            align-items: center;
            gap: 8px;
            padding: 9px 12px;
            border-radius: 8px;
            color: var(--ink);
            text-decoration: none;
            font-size: 13.5px;
            font-weight: 400;
            transition: background 0.15s ease;
        }

        .archive-sub-link:hover {
            background: var(--bg);
            color: var(--primary-dark);
            text-decoration: none;
        }

        .archive-sub-link i.fa-chevron-right {
            font-size: 9px;
            color: var(--primary);
        }

        /* Single-link box (no dropdown, e.g. Public Comments) direct link style */
        .archive-box-header.no-caret .archive-chevron {
            display: none;
        }
        .archive-box-link {
    display: block;
    text-decoration: none;
    color: inherit;
    cursor: pointer;
}
.archive-box-link:hover {
    text-decoration: none;
    color: inherit;
}
.archive-box-link:hover .archive-box-header {
    background: var(--bg);
}
.search-box .search-icon{
	right: -4px;
    }
.search-box button{
	right: 5px;
    top: 33%!important;
    position: absolute;
    }    
#orgContainer .highcharts-exporting-group {
    transform: translateX(-100px) !important;
}
    .gallery-section{
        padding:40px 0 60px;
    }
    /* Title */
    .gallery-section .gallery-title{
        text-align:center;
        color:#1565c0;
        font-size:42px;
        font-weight:600;
        margin-bottom:35px;
    }
    /* Wrapper */
     .gallery-section .gallery-wrapper{
        background:#fff;
        border-radius:12px;
        padding:25px;
        box-shadow:0 5px 20px rgba(0,0,0,.12);
    }
    /* Main Image */
     .gallery-section .main-image{
        position:relative;
        width:100%;
        max-width:900px;
        height:520px;
        margin:auto;
        border:4px solid #cb844f;
        border-radius:10px;
        overflow:hidden;
        background:#fff;
    }
    /* Image */
     .gallery-section .main-image img{
        width:100%;
        height:100%;
        object-fit:cover;
        transition:.4s;
    }
    /* Navigation Buttons */
    .gallery-section .main-image button{
        position:absolute;
        top:50%;
        transform:translateY(-50%);
        width:50px;
        height:65px;
        border:none;
        background:rgba(0,0,0,.45);
        color:#fff;
        font-size:26px;
        cursor:pointer;
        transition:.3s;
        z-index:99;
    }
    .gallery-section .main-image button:hover{
        background:#1565c0;
    }
    .gallery-section #prev{
        left:0;
        border-radius:0 8px 8px 0;
    }
     .gallery-section #next{
        right:0;
        border-radius:8px 0 0 8px;
    }
    /* Thumbnails */
     .gallery-section.thumbnails{
        display:flex;
        flex-wrap:wrap;
        justify-content:center;
        gap:15px;
        margin-top:30px;
    }
    /* Thumbnail */
    .gallery-section .thumb{
        width:150px;
        height:95px;
        object-fit:cover;
        border:3px solid #1565c0;
        border-radius:8px;
        cursor:pointer;
        transition:.3s;
        background:#fff;
    }
     .gallery-section .thumb:hover{
        transform:scale(1.05);
        box-shadow:0 5px 12px rgba(0,0,0,.20);
    }
     .gallery-section .thumb.active{
        border-color:#ff9800;
        transform:scale(1.05);
    }
    /* Animation */
    .gallery-section .fade{
        animation:fade .4s linear;
    }
    @keyframes fade{
        from{
            opacity:.2;
        }
        to{
            opacity:1;
        }
    }
    /* Responsive */
    @media(max-width:992px){
        .gallery-section .main-image{
            height:420px;
        }
        .gallery-section .thumb{
            width:120px;
            height:80px;
        }
    }
    @media(max-width:768px){
       .gallery-section  .gallery-title{
            font-size:32px;
        }
        .gallery-section .main-image{
            height:320px;
        }
        .gallery-section .thumb{
            width:100px;
            height:70px;
        }
    }
    @media(max-width:576px){
        .gallery-section .gallery-title{
            font-size:28px;
        }
        .gallery-section .main-image{
            height:220px;
        }
         .gallery-section .thumb{
            width:80px;
            height:60px;
        }
    }
    
    
.video-gallery .gallery-title {
	font-size: 42px;
	font-weight: 600;
	color: #1565c0;
}

.video-gallery .video-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 30px;
}

.video-gallery .video-card {
	background: #fff;
	border-radius: 10px;
	overflow: hidden;
	box-shadow: 0 6px 18px rgba(0, 0, 0, .12);

	/*  transition:.3s; */
}

.video-gallery .video-card video {
	width: 100%;
	height: 220px;
	display: block;
	background: #000;
	border-bottom: 2px solid #1565c0;
}

.video-gallery .video-card p {
	padding: 15px;
	text-align: center;
	color: var(--primary-dark);
	font-weight: 600;
	line-height: 1.5;
}

@media ( max-width :992px) {
	.video-gallery .video-grid {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media ( max-width :768px) {
	.video-gallery .video-grid {
		grid-template-columns: 1fr;
	}
	.video-gallery .gallery-title {
		font-size: 32px;
	}
	.video-gallery .video-card video {
		height: 250px;
	}
}


.linkman .intro-text {
	font-size: 16px;
	line-height: 1.8;
	text-align: justify;
	color: #444;
	margin-bottom: 35px;
}

.linkman .section-card {
	background: #fff;
	border: 1px solid #d8d8d8;
	border-radius: 5px;
	overflow: hidden;
	margin-bottom: 35px;
	box-shadow: 0 2px 8px rgba(0, 0, 0, .08);
}


.linkman .document-list {
	list-style: none;
	margin: 0;
	padding: 0;
}

.linkman .document-list li {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 14px 18px;
	border-bottom: 1px solid #ececec;
	transition: .3s;
}

.linkman .document-list li:hover {
	background: #f5fbff;
}

.linkman .doc-left {
	display: flex;
	align-items: center;
	gap: 12px;
}

.linkman .doc-left i {
	color: var(--primary);
	font-size: 22px;
}

.linkman .doc-title {
	text-decoration: none;
	color: var(--primary-dark);
	font-size: 15px;
}

.linkman .doc-title:hover {
	text-decoration: underline;
}

.linkman .doc-size {
	color: #777;
	font-weight: 600;
}

@media ( max-width :768px) {
	.linkman .document-list li {
		flex-direction: column;
		align-items: flex-start;
		gap: 8px;
	}
}

.linkman .section-card {
	background: #fff;
	border: 1px solid #d9d9d9;
	border-radius: 4px;
	overflow: hidden;
	margin-bottom: 30px;
}

.linkman .link-list {
	padding: 10px;
}

.linkman .link-item {
	display: flex;
	align-items: center;
	gap: 10px;
	width: 100%;
	background: #dce9f7;
	color: #000;
	text-decoration: none;
	padding: 9px 12px;
	margin-bottom: 6px;
	border: 1px solid #ffffff;
	font-size: 15px;
	transition: .3s;
}

.linkman .link-item:hover {
	background: #c8dcf4;
	color: var(--primary);
}

.linkman .link-item i {
	font-size: 11px;
	color: #444;
	min-width: 12px;
}

@media ( max-width :768px) {
	.linkman .link-item {
		font-size: 14px;
		align-items: flex-start;
	}
}

.function-section {
	padding: 20px 0 40px;
}

/*=========================================================
                  SECTION CARD
=========================================================*/
.function-section .section-card {
	background: #fff;
	border: 1px solid #d6d6d6;
	border-radius: 4px;
	overflow: hidden;
	margin-bottom: 25px;
	box-shadow: 0 2px 6px rgba(0, 0, 0, .08);
}

/*=========================================================
                DOCUMENT LIST
=========================================================*/
.function-section .document-list {
	list-style: none;
	margin: 0;
	padding: 0;
}

/*=========================================================
                DOCUMENT ROW
=========================================================*/
.function-section .document-list li {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	background: var(--bg);
	padding: 11px 18px;
	border-bottom: 2px solid #ffffff;
	transition: .25s;
}

.function-section .document-list li:hover {
	border: 1px var(--primary) solid;
}

/*=========================================================
                LEFT CONTENT
=========================================================*/
.function-section .doc-left {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	width: 85%;
}

.function-section .doc-left i {
	color: var(--primary);
	margin-top: 4px;
	min-width: 15px;
}

/*=========================================================
                PDF TITLE
=========================================================*/
.function-section .doc-title {
	color: #222;
	text-decoration: none;
	line-height: 1.45;
	font-weight: 400;
}

.function-section .doc-title:hover {
	color: var(--primary-dark);
	text-decoration: underline;
}

/*=========================================================
                PDF SIZE
=========================================================*/
.function-section .doc-size {
	white-space: nowrap;
	color: #444;
	font-weight: 500;
	margin-left: 15px;
}

/*=========================================================
                LINKS
=========================================================*/
.function-section a {
	text-decoration: none;
}

/*=========================================================
                RESPONSIVE
=========================================================*/
@media ( max-width :1200px) {
	.function-section .container {
		max-width: 1100px;
	}
}

@media ( max-width :992px) {
	.function-section .page-title {
		font-size: 30px;
	}
	.function-section .section-header {
		font-size: 16px;
	}
	.function-section .doc-title {
		font-size: 13px;
	}
	.function-section .doc-size {
		font-size: 11px;
	}
}

@media ( max-width :768px) {
	.function-section .document-list li {
		flex-direction: column;
		align-items: flex-start;
		gap: 8px;
	}
	.function-section .doc-left {
		width: 100%;
	}
	.function-section .doc-size {
		margin-left: 22px;
	}
	.function-section .page-title {
		font-size: 28px;
	}
	.function-section .section-header {
		font-size: 15px;
		padding: 10px 14px;
	}
}

@media ( max-width :576px) {
	.function-section .page-title {
		font-size: 24px;
	}
	.function-section .section-header {
		font-size: 14px;
	}
	.function-section .doc-title {
		font-size: 13px;
		line-height: 1.4;
	}
	.function-section .doc-size {
		font-size: 11px;
	}
}

        .whats-new-container {
            padding: 20px;
        }

        .whats-new-container .whats-new-card {
            border: 1px solid #ddd;
            border-radius: 5px;
            overflow: hidden;
            background: #fff;
        }

       .whats-new-container .card-header {
            background: var(--primary);
            color: white;
            font-weight: 600;
            padding: 10px 15px;
        }

       .whats-new-container #whatsNewTable {
            width: 100% !important;
        }

        .whats-new-container#whatsNewTable thead th {
            text-align: center;
            vertical-align: middle;
        }

        .whats-new-container#whatsNewTable tbody td {
            vertical-align: middle;
        }

       .whats-new-container .serial-column {
            text-align: center;
            width: 70px;
        }

        .whats-new-container.date-column {
            text-align: center;
            width: 120px;
            white-space: nowrap;
        }

       .whats-new-container .action-column {
            text-align: center;
            width: 140px;
        }

        .whats-new-container.download-icon {
            color: var(--primary);
            cursor: pointer;
            margin-right: 10px;
            font-size: 16px;
        }

       .whats-new-container .view-icon {
            color: var(--primary);
            cursor: pointer;
            font-size: 16px;
        }

        .whats-new-container.file-info {
            display: block;
            font-size: 12px;
            margin-top: 4px;
        }
        .w_70{width:70px;}
        .w_100{width:100px;}
        .w_150{width:150px;}
        #reportsContainer .report-name-link{display: inline!important;}
        #reportList .report-name-link{display: inline-block!important;}
        .ptcc .heading-card {
			border: 1px solid #dee2e6;
			border-radius: 10px;
			margin-bottom: 16px;
			overflow: hidden;
		}

		/* "abc" heading bar - now matches the table header orange */
		.ptcc .heading-bar {
			background: var(--primary);
			border-bottom: 1px solid var(--ptcc-orange-dark);
			padding: 14px 20px;
			display: flex;
			align-items: center;
			justify-content: space-between;
			cursor: pointer;
			transition: background 0.15s ease;
		}

		.ptcc .heading-bar:hover {
			background: var(--primary-dark);
		}

		.ptcc .heading-bar .heading-text {
			font-weight: 700;
			margin: 0;
			color: #fff;
		}

		.ptcc .heading-bar .btn-action {
			background: #fff;
			color: var(--primary-dark);
			border: none;
			font-weight: 600;
		}

		.ptcc .heading-bar .btn-action:hover {
			background: #f5f5f5;
			color: var(--primary-dark);
		}

		.ptcc .heading-body {
			padding: 20px;
			display: none;
		}

		/* "Documents" section title bar - same orange theme */
		.ptcc .section-title-bar {
			background: var(--primary);
			color: #fff;
			border: 1px solid var(--primary-dark);
			border-radius: 8px;
			padding: 8px 16px;
			font-weight: 600;
			text-align: center;
			margin-bottom: 14px;
		}

		.ptcc .section-title-bar i {
			color: #fff;
		}
		
				/* 
   SCROLL  REPORT AREA
   */

.ptcc #headingsContainer {
    max-height: 600px;
    overflow-y: auto;
    overflow-x: hidden;
    padding-right: 8px;
}

/* Scrollbar */
/* Scrollbar - same dynamic color as heading-bar */
.ptcc #headingsContainer::-webkit-scrollbar {
    width: 8px;
}

.ptcc #headingsContainer::-webkit-scrollbar-track {
    background: #f1f1f1;
    border-radius: 10px;
}

.ptcc #headingsContainer::-webkit-scrollbar-thumb {
    background: var(--primary);
    border-radius: 10px;
}

.ptcc #headingsContainer::-webkit-scrollbar-thumb:hover {
    background: var(--primary-dark);
}

.ptcc #headingsContainer {
    max-height: calc(100vh - 420px);
    overflow-y: auto;
    overflow-x: hidden;
    padding-right: 8px;
}
 .anual .reports-wrapper {
            max-width: 1200px;
            margin: 0 auto;
        }

         .anual .year-filter-bar {
            display: flex;
            align-items: center;
            gap: 10px;
            margin-bottom: -30px;
            flex-wrap: wrap;
        }

         .anual .year-filter-bar label {
            font-weight: 600;
            margin-bottom: 0;
            white-space: nowrap;
        }

         .anual #yearSelect {
            max-width: 160px;
            cursor: pointer;
            background-color: #fff;
        }

        /* was an inline style="max-width:200px;" on the #yearSelect input */
        .anual .year-select-input {
            max-width: 200px;
        }

        .anual  .year-picker-wrapper {
            position: relative;
            display: inline-block;
        }

         .anual .year-picker-dropdown {
            display: none;
            position: absolute;
            top: calc(100% + 4px);
            left: 0;
            z-index: 1000;
            width: 260px;
            background: #ffffff;
            border: 1px solid #dee2e6;
            border-radius: 6px;
            box-shadow: 0 6px 18px rgba(0, 0, 0, 0.15);
            padding: 10px 12px 14px;
        }

         .anual .year-picker-dropdown.open {
            display: block;
        }

         .anual .year-picker-decade-nav {
            display: flex;
            align-items: center;
            justify-content: space-between;
            padding: 4px 4px 10px;
            font-weight: 700;
            font-size: 1.05rem;
        }

        .anual .year-picker-decade-nav button {
            border: none;
            background: transparent;
            font-size: 1.1rem;
            font-weight: 700;
            color: var(--primary);
            cursor: pointer;
            padding: 2px 8px;
            border-radius: 4px;
        }

         .anual .year-picker-decade-nav button:hover {
            background-color: #eef3f8;
        }

         .anual .year-picker-grid {
            display: grid;
            grid-template-columns: repeat(3, 1fr);
            gap: 6px 4px;
        }

         .anual .year-picker-grid button {
            border: none;
            background: transparent;
            color: var(--primary);
            font-weight: 600;
            padding: 8px 4px;
            border-radius: 5px;
            cursor: pointer;
            font-size: 0.92rem;
        }

         .anual .year-picker-grid button:hover {
            background-color: #eef3f8;
        }

         .anual .year-picker-grid button.selected {
            background-color: var(--primary);
            color: #ffffff;
        }

        /* was inline btn.style.opacity / btn.style.cursor set from JS for disabled years —
           kept as a class so the JS only has to toggle a class name; direct CSSOM
           property writes (btn.style.opacity = ...) are unaffected by style-src CSP,
           but a class is cleaner and matches the rest of this cleanup */
         .anual .year-picker-grid button.year-disabled {
            opacity: 0.35;
            cursor: default;
        }

         .anual .reports-table-card {
            border: 1px solid #dee2e6;
            border-radius: 6px;
            overflow: hidden;
        }

         .anual .section-header {
            background-color: var(--primary-dark);
            color: #ffffff;
            padding: 10px 15px;
            font-weight: 600;
            border-radius: 5px 5px 0 0;
            border-left: 6px var(--secondary) solid;
            text-align: center;
            font-size: 1.05rem;
        }

         .anual .reports-table {
            width: 100%;
            table-layout: fixed;
            margin-bottom: 0;
        }

         .anual .reports-table th,
         .anual .reports-table td {
            vertical-align: middle;
            text-align: center;
        }

         .anual .reports-table thead th {
            background-color: #d9d9d9;
            font-weight: 700;
            border-bottom: 2px solid #c7c7c7;
        }

         .anual .reports-table tbody tr:nth-child(even) {
            background-color: #f7f9fb;
        }

         .anual .reports-table th:nth-child(1),
         .anual .reports-table td:nth-child(1) {
            width: 8%;
        }

         .anual .reports-table th:nth-child(2),
        .anual .reports-table td:nth-child(2) {
            width: 30%;
            text-align: left;
        }

         .anual .reports-table th:nth-child(3),
         .anual .reports-table td:nth-child(3) {
            width: 15%;
        }

         .anual .reports-table th:nth-child(4),
         .anual .reports-table td:nth-child(4) {
            width: 24%;
        }

         .anual .reports-table th:nth-child(5),
         .anual .reports-table td:nth-child(5) {
            width: 23%;
        }

         .anual .report-serial {
            font-weight: 600;
            color: var(--primary);
        }

         .anual .report-name-link {
            color: var(--primary);
            font-weight: 600;
            text-decoration: none;
        }

         .anual .report-name-link:hover {
            text-decoration: underline;
        }

         .anual .report-name-text {
            font-weight: 600;
            color: #444;
        }

         .anual .file-action-link {
            color: var(--primary);
            text-decoration: none;
            margin: 0 4px;
        }

         .anual .file-action-link:hover {
            opacity: 0.7;
        }

         .anual .file-size-tag {
            font-size: 0.75rem;
            color: #6c757d;
        }

        .anual .no-file-dash {
            color: #adb5bd;
        }

         .anual .no-reports {
            text-align: center;
            padding: 40px 15px;
        }

       .anual .no-reports i {
            font-size: 2.2rem;
            margin-bottom: 10px;
            display: block;
        }
        .qtr  {
            max-width: 1200px;
            margin: 0 auto;
        }

        .qtr .year-filter-bar {
            display: flex;
            align-items: center;
            gap: 10px;
            margin-bottom: 18px;
            flex-wrap: wrap;
        }

        .qtr .year-filter-bar label {
            font-weight: 600;
            margin-bottom: 0;
            white-space: nowrap;
        }

        .qtr #yearSelect {
            max-width: 160px;
            cursor: pointer;
            background-color: #fff;
        }

        /* was an inline style="max-width:260px;" on #quarterSelect */
        .qtr #quarterSelect {
            max-width: 260px;
        }

        .qtr .year-picker-wrapper {
            position: relative;
            display: inline-block;
        }

        .qtr .year-picker-dropdown {
            display: none;
            position: absolute;
            top: calc(100% + 4px);
            left: 0;
            z-index: 1000;
            width: 260px;
            background: #ffffff;
            border: 1px solid #dee2e6;
            border-radius: 6px;
            box-shadow: 0 6px 18px rgba(0, 0, 0, 0.15);
            padding: 10px 12px 14px;
        }

        .qtr .year-picker-dropdown.open {
            display: block;
        }

       .qtr .year-picker-decade-nav {
            display: flex;
            align-items: center;
            justify-content: space-between;
            padding: 4px 4px 10px;
            font-weight: 700;
            font-size: 1.05rem;
        }

        .qtr .year-picker-decade-nav button {
            border: none;
            background: transparent;
            font-size: 1.1rem;
            font-weight: 700;
            color: var(--primary);
            cursor: pointer;
            padding: 2px 8px;
            border-radius: 4px;
        }

        .qtr .year-picker-decade-nav button:hover {
            background-color: #eef3f8;
        }

        .qtr .year-picker-grid {
            display: grid;
            grid-template-columns: repeat(3, 1fr);
            gap: 6px 4px;
        }

        .year-picker-grid button {
            border: none;
            background: transparent;
            color: var(--primary);
            font-weight: 600;
            padding: 8px 4px;
            border-radius: 5px;
            cursor: pointer;
            font-size: 0.92rem;
        }

        .year-picker-grid button:hover {
            background-color: #eef3f8;
        }

        .qtr .year-picker-grid button.selected {
            background-color: var(--primary);
            color: #ffffff;
        }

       .qtr  .reports-table-card {
            border: 1px solid #dee2e6;
            border-radius: 6px;
            overflow: hidden;
        }

        .qtr .section-header {
            background-color: var(--primary-dark);
            color: #ffffff;
            padding: 10px 15px;
            font-weight: 600;
            border-radius: 5px 5px 0 0;
            border-left: 6px var(--secondary) solid;
            text-align: center;
            font-size: 1.05rem;
        }

        .qtr .reports-table {
            width: 100%;
            table-layout: fixed;
            margin-bottom: 0;
        }

        .qtr .reports-table th,
        .qtr .reports-table td {
            vertical-align: middle;
            text-align: center;
        }

        .qtr .reports-table thead th {
            background-color: #d9d9d9;
            font-weight: 700;
            border-bottom: 2px solid #c7c7c7;
        }

        .qtr .reports-table tbody tr:nth-child(even) {
            background-color: #f7f9fb;
        }

        .qtr .reports-table th:nth-child(1),
        .qtr .reports-table td:nth-child(1) {
            width: 8%;
        }

        .qtr .reports-table th:nth-child(2),
        .qtr .reports-table td:nth-child(2) {
            width: 30%;
            text-align: left;
        }

        .qtr .reports-table th:nth-child(3),
        .qtr .reports-table td:nth-child(3) {
            width: 15%;
        }

        .qtr .reports-table th:nth-child(4),
        .qtr .reports-table td:nth-child(4) {
            width: 24%;
        }

        .qtr .reports-table th:nth-child(5),
        .qtr .reports-table td:nth-child(5) {
            width: 23%;
        }

        .qtr .report-serial {
            font-weight: 600;
            color: var(--primary);
        }

        .qtr .report-name-link {
            color: var(--primary);
            font-weight: 600;
            text-decoration: none;
        }

        .qtr .report-name-link:hover {
            text-decoration: underline;
        }

        .qtr .report-name-text {
            font-weight: 600;
            color: #444;
        }

        .qtr .file-action-link {
            color: var(--primary);
            text-decoration: none;
            margin: 0 4px;
        }

        .qtr .file-action-link:hover {
            opacity: 0.7;
        }

       .qtr .file-size-tag {
            font-size: 0.75rem;
            color: #6c757d;
        }

       .qtr .no-file-dash {
            color: #adb5bd;
        }

       .qtr .no-reports {
            text-align: center;
            padding: 40px 15px;
        }

        .qtr .no-reports i {
            font-size: 2.2rem;
            margin-bottom: 10px;
            display: block;
        }
                .pc-header .eyebrow {
            display: inline-block;
            font-size: 12px;
            letter-spacing: 1.5px;
            font-weight: 700;
            color: var(--bhagwa-dark);
            text-transform: uppercase;
            background: var(--bg);
            padding: 4px 14px;
            border-radius: 20px;
            margin-bottom: 12px;
        }

        .pc-header h1 {
            font-size: 26px;
            font-weight: 700;
            color: var(--primary-dark);
            margin: 0;
        }

        .pc-header p {
            color: #666;
            font-size: 14px;
            margin-top: 6px;
        }

        .pc-item {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 16px;
            background: #fff;
            border: 1px solid #EDE3D3;
            border-radius: 10px;
            padding: 18px 22px;
            margin-bottom: 14px;
            box-shadow: 0 1px 3px rgba(58, 44, 26, 0.04);
            transition: box-shadow 0.2s ease, border-color 0.2s ease;
        }

        .pc-item:hover {
            border-color: var(--bg);
            box-shadow: 0 4px 14px rgba(255, 255, 255, 0.12);
        }

        .pc-item-title {
            font-size: 15px;
            font-weight: 600;
            color: var(--primary);
            margin: 0 0 4px 0;
        }

        .pc-item-meta {
            font-size: 12.5px;
            color: var(--muted);
        }

        .pc-item-meta .badge-expired {
            display: inline-block;
            background: #FBE7E7;
            color: var(--primary-dark);
            font-weight: 600;
            padding: 2px 8px;
            border-radius: 10px;
            font-size: 11px;
            margin-left: 6px;
        }

        .pc-links {
            display: flex;
            gap: 8px;
            flex-shrink: 0;
        }

        .pc-links a {
            display: inline-flex;
            align-items: center;
            gap: 6px;
            padding: 8px 14px;
            border-radius: 8px;
            background: var(--bg);
            color: var(--primary-dark);
            font-size: 13px;
            font-weight: 600;
            text-decoration: none;
            transition: background 0.15s ease;
        }

        .pc-links a:hover {
            background: var(--primary-dark);
            color: #fff;
            text-decoration: none;
        }

        .pc-empty {
            text-align: center;
            padding: 60px 20px;
            color: #666;
        }

        .pc-empty i {
            font-size: 34px;
            color: var(--primary);
            margin-bottom: 12px;
            display: block;
        }
        .olink .logo-grid {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 20px;
    background: #f2f2f2;
}

.olink .logo-card {
    flex: 0 0 calc(25% - 15px);
    max-width: calc(25% - 15px);
    display: flex;
    align-items: center;
    justify-content: center;
}
.olink .logo-card:hover {border: var(--primary) solid 1px;}
@media (max-width: 992px) {
    .olink .logo-card {
        flex: 0 0 calc(33.333% - 14px);
        max-width: calc(33.333% - 14px);
    }
}

@media (max-width: 768px) {
    .olink .logo-card {
        flex: 0 0 calc(50% - 10px);
        max-width: calc(50% - 10px);
    }
}

@media (max-width: 480px) {
   .olink .logo-card {
        flex: 0 0 100%;
        max-width: 100%;
    }
}
.darkcolor{background:#222;}
/* =========================================================
   LINEMAN GALLERY
   ========================================================= */

.lineman_gallery {
    padding: 50px 20px;

}

.lineman_gallery_header p {
    margin: 15px auto 0;
    color: #64748b;
    font-size: 14px;
    line-height: 1.7;
}


/* CARD */

.lineman_gallery_card {
    height: 100%;
    background: #ffffff;
    border-radius: 14px;
    overflow: hidden;
    border: 1px solid #e5e7eb;
    box-shadow: 0 5px 18px rgba(15, 23, 42, 0.08);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.lineman_gallery_card:hover {
    transform: translateY(-5px);
    box-shadow: 0 12px 28px rgba(15, 23, 42, 0.14);
}


/* IMAGE */

.lineman_gallery_image {
    position: relative;
    height: 245px;
    overflow: hidden;
    background: #e5e7eb;
}

.lineman_gallery_image img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    transition: transform 0.5s ease;
}

.lineman_gallery_card:hover .lineman_gallery_image img {
    transform: scale(1.05);
}


/* DARK OVERLAY */

.lineman_gallery_image::after {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.12);
    opacity: 0;
    transition: opacity 0.3s ease;
    pointer-events: none;
}

.lineman_gallery_card:hover .lineman_gallery_image::after {
    opacity: 1;
}


/* ZOOM BUTTON */

.lineman_zoom_btn {
    position: absolute;
    right: 15px;
    bottom: 15px;

    width: 42px;
    height: 42px;

    border: 0;
    border-radius: 50%;

    background: rgba(255, 255, 255, 0.95);
    color: #0b2545;

    display: flex;
    align-items: center;
    justify-content: center;

    cursor: pointer;
    z-index: 5;

    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);

    transition:
        background 0.25s ease,
        color 0.25s ease,
        transform 0.25s ease;
}

.lineman_zoom_btn:hover {
    background: #c56b2f;
    color: #ffffff;
    transform: scale(1.1);
}

.lineman_zoom_btn i {
    font-size: 16px;
}


/* CONTENT */

.lineman_gallery_content {
    padding: 18px 20px 20px;
}

.lineman_gallery_content h3 {
    margin: 0 0 8px;
    color: #0b2545;
    font-size: 18px;
    font-weight: 700;
}

.lineman_gallery_content p {
    margin: 0;
    color: #64748b;
    font-size: 13px;
    line-height: 1.6;
}


/* =========================================================
   ZOOM MODAL
   ========================================================= */

.lineman_modal_content {
    border: 0;
    border-radius: 12px;
    overflow: hidden;
    background: #ffffff;
}

.lineman_modal_content .modal-header {
    padding: 12px 18px;
    border-bottom: 1px solid #e5e7eb;
}

.lineman_modal_content .modal-title {
    color: #0b2545;
    font-size: 17px;
    font-weight: 700;
}

.lineman_modal_content .modal-body {
    padding: 10px;
    background: #f1f5f9;
    text-align: center;
}

.lineman_zoom_image {
    display: block;
    width: 100%;
    max-height: 75vh;
    object-fit: contain;
    margin: auto;
}


/* MOBILE */

@media (max-width: 767px) {

    .lineman_gallery {
        padding: 35px 12px;
    }

    .lineman_gallery_header h2 {
        font-size: 25px;
    }

    .lineman_gallery_image {
        height: 220px;
    }

    .lineman_gallery_content {
        padding: 15px;
    }

}
.lineman_gallery_tabs {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 8px;

    margin-bottom: 30px;
    padding: 5px;

    background: var(--bg);
    border-radius: 10px;

    width: fit-content;
    margin-left: auto;
    margin-right: auto;
}

.lineman_gallery_tab {
    display: inline-flex;
    align-items: center;

    padding: 10px 22px;

    border-radius: 7px;

    color:var(--bg);;
    background: transparent;

    font-size: 14px;
    font-weight: 600;

    text-decoration: none;

    transition: all .25s ease;
}

.lineman_gallery_tab:hover {
     color:var(--bg)!important;
     background: var(--primary);
    text-decoration: none;
}

.lineman_gallery_tab.active {
    color: #ffffff!important;
    background: var(--primary);

    box-shadow: 0 3px 8px rgba(184, 92, 10, .25);
}

.lineman_gallery_tab.active:hover {
    color: #ffffff;
}


 .rti-toggle-bar {
    display: flex;
    justify-content: flex-end;
    margin-bottom: 10px;
    min-height:30px;
}
.year-filter-bar .rti-toggle-bar {
	margin-left: 642px;
    margin-top: 10px;
    }

.archive-toggle-btn {
    display: inline-block;
    background-color: var(--primary-dark);
    color: #ffffff;
    padding: 6px 16px;
    border: none;
    border-radius: 4px;
    font-weight: 600;
    font-size: 0.9rem;
    cursor: pointer;
}

.archive-toggle-btn:hover {
    opacity: 0.9;
}






/* Mobile */

@media (max-width: 576px) {

    .lineman_gallery_tabs {
        width: 100%;
        max-width: 360px;
    }

    .lineman_gallery_tab {
        flex: 1;
        justify-content: center;
        padding: 9px 12px;
        font-size: 13px;
    }
}

/* =========================================================
   SESSION GALLERY
   ========================================================= */

.session_gallery {
    width: 100%;
    padding: 10px 0 25px;

}


/* =========================================================
   PAGE HEADER
   ========================================================= */

.session_gallery_header {
    margin-bottom: 38px;
}

.session_gallery_header .main-title {
    margin-bottom: 12px;
}

.session_gallery_description {
    max-width: 720px;
    margin: 0 auto;
    color: #64748b;
    font-size: 14px;
    line-height: 1.7;
}

.session_gallery_line {
    width: 65px;
    height: 3px;
    margin: 14px auto 0;

    background: var(--primary);

    border-radius: 5px;
}


/* =========================================================
   SESSION CARD
   ========================================================= */

.session_gallery_card {
    margin-bottom: 20px;

    background: #ffffff;

    border: 1px solid #dce3e8;
    border-radius: 10px;

    overflow: hidden;

    box-shadow: 0 3px 12px rgba(0, 0, 0, 0.05);

    transition:
        box-shadow 0.25s ease,
        transform 0.25s ease;
}

.session_gallery_card:hover {
    transform: translateY(-2px);

    box-shadow:
        0 8px 22px rgba(0, 0, 0, 0.08);
}


/* =========================================================
   SESSION TITLE
   ========================================================= */

.session_gallery_title {
    min-height: 58px;

    display: flex;
    align-items: center;

    padding: 10px 18px;

    background: var(--primary);
    color: var(--bg);
}


/* ICON */

.session_gallery_title_icon {
    width: 38px;
    height: 38px;

    margin-right: 12px;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 8px;

    background: rgba(255, 255, 255, 0.15);

    color: var(--bg);

    font-size: 17px;
}


/* SMALL TEXT */

.session_gallery_title_small {
    display: block;

    margin-bottom: 1px;

    font-size: 10px;

    text-transform: uppercase;
    letter-spacing: 0.8px;

    opacity: 0.75;
}


/* TITLE */

.session_gallery_title h3 {
    margin: 0;

    color: var(--bg);

    font-size: 17px;
    font-weight: 600;
}


/* =========================================================
   TABLE WRAPPER
   ========================================================= */

.session_gallery_table_wrapper {
    width: 100%;
    overflow-x: auto;
}


/* =========================================================
   TABLE
   ========================================================= */

.session_gallery_table {
    width: 100%;

    margin: 0;

    border-collapse: collapse;

    color: #243447;

    font-size: 14px;
}


/* TABLE HEADER */

.session_gallery_table thead th {
    padding: 12px 10px;

    background: #f8fafc;

    color: #172033;

    font-size: 14px;
    font-weight: 700;

    text-align: left;

    border: 1px solid #dce3e8;

    white-space: nowrap;
}


/* TABLE BODY */

.session_gallery_table tbody td {
    padding: 11px 10px;

    border: 1px solid #dce3e8;

    vertical-align: middle;

    line-height: 1.55;
}


/* ROW */

.session_gallery_table tbody tr {
    transition: background 0.2s ease;
}

.session_gallery_table tbody tr:hover {
    background: #fffaf5;
}


/* =========================================================
   COLUMN WIDTHS
   ========================================================= */

.session_gallery_table .session_srno {
    width: 85px;
}

.session_gallery_table .session_speaker {
    width: 205px;
}

.session_gallery_table .session_details {
    width: 285px;
}

.session_gallery_table .session_download {
    width: 100px;
    text-align: center;
}


/* =========================================================
   SR NO
   ========================================================= */

.session_gallery_table tbody td:first-child {
    color: #334155;
    font-weight: 500;
}


/* =========================================================
   DOWNLOAD
   ========================================================= */

.session_download_cell {
    text-align: center;
}

.session_pdf_link {
    width: 30px;
    height: 30px;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    color: #d32f2f;

    font-size: 19px;

    text-decoration: none;

    border-radius: 5px;

    transition:
        color 0.2s ease,
        background 0.2s ease,
        transform 0.2s ease;
}

.session_pdf_link:hover {
    color: #a91515;

    background: #fff1f1;

    transform: scale(1.1);

    text-decoration: none;
}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 767px) {

    .session_gallery {
        padding: 35px 10px 45px;
    }

    .session_gallery_title {
        padding: 10px 14px;
    }

    .session_gallery_title h3 {
        font-size: 15px;
    }

    .session_gallery_description {
        padding: 0 12px;
        font-size: 13px;
    }

    .session_gallery_table {
        min-width: 850px;
    }

}
.default .container #reportTableBody td .badge-no-file, .default .container #reportTableBody .bg-secondary, .table-responsive .badge-no-file, .table-responsive .bg-secondary{background-color:#fff!important; color:#222!important;}
.cdm-accordion-wrapper { padding: 0; }
.cdm-accordion-item { border-bottom: 1px solid #eee; }
.cdm-accordion-item:last-child { border-bottom: none; }
.cdm-accordion-toggle {
    background: #f5f5f5;
    padding: 12px 16px;
    cursor: pointer;
    font-weight: 500;
    display: flex;
    justify-content: space-between;
    align-items: center;
    user-select: none;
}
.cdm-accordion-toggle::after {
    content: "\25BC";
    font-size: 11px;
    margin-left: 10px;
    transition: transform 0.2s;
}
.cdm-accordion-toggle.active::after { transform: rotate(180deg); }
.cdm-accordion-panel {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.25s ease;
    background: #fff;
}
.cdm-accordion-panel.open { padding: 4px 0; }
.cdm-report-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px 16px;
    border-top: 1px solid #f0f0f0;
}
.cdm-report-row:first-child { border-top: none; }
.cdm-report-name { font-size: 14px; }
.cdm-report-link {
    color: #000 !important;
    text-decoration: none;
    font-size: 13px;
}
.cdm-report-link:hover { text-decoration: underline; }
.varify2 .login-section {
	padding: 60px 20px;
	min-height: 100vh;
	display: flex;
	align-items: center;
}

.varify2 .login-card {
	background: white;
	padding: 40px 30px;
	border-radius: 12px;
	box-shadow: 0 10px 30px rgba(0, 100, 80, 0.1);
	max-width: 480px;
	width: 100%;
	margin: auto;
}

.varify2 .btn-primary {
	background-color: #ff7a18;
	border: none;
	transition: all 0.3s;
}

.varify2 .btn-primary:hover {
	background-color: #1b5e20;
	transform: translateY(-2px);
}

.varify2 .btn-primary:disabled {
	background-color: #f0a874;
	opacity: 0.7;
}

.varify2 .login-div {
	display: flex;
	z-index: 2;
	width: 100%;
	margin: 0 auto;
	align-items: center;
	gap: 15px;
	margin-bottom: 20px;
}

.varify2 .login-div .nic-logo {
	height: 80px;
	width: 80px;
	object-fit: contain;
}

.varify2 .login-div div {
	width: 100%;
	margin: 0 auto;
}

.varify2 .login-div h4 {
	font-size: 14px;
	margin-top: 0px;
	font-weight: bold;
	color: #5d4037;
}

.varify2 .login-div h1 {
	font-size: 22px;
	font-weight: bold;
	color: #d37d4f;
	margin: 5px 0 0 0;
}

.varify2 .page-subtitle {
	font-size: 14px;
	color: #6c757d;
	margin-bottom: 20px;
}

.varify2 .form-label {
	margin-bottom: .5rem;
	font-weight: 600;
	color: #2c5f2d;
}

.varify2 .form-control {
	border-radius: 8px;
	border: 1px solid #ddd;
	padding: 10px 15px;
	letter-spacing: 3px;
}

.varify2 .form-control:focus {
	border-color: #daa149;
	box-shadow: 0 0 0 0.2rem rgba(218, 161, 73, 0.25);
}

.varify2 .invalid-feedback {
	display: none;
	color: red;
	font-size: 14px;
}

.varify2 .is-invalid+.invalid-feedback,
.varify2 .is-invalid ~ .invalid-feedback {
	display: block;
}

.varify2 .alert-success-box {
	background-color: #e8f5e9;
	border-left: 4px solid #2c5f2d;
	color: #1b5e20;
	padding: 12px 15px;
	border-radius: 8px;
	margin-bottom: 20px;
	font-size: 13px;
}

.varify2 .alert-error-box {
	background-color: #fdecea;
	border-left: 4px solid #dc3545;
	color: #a71d2a;
	padding: 12px 15px;
	border-radius: 8px;
	margin-bottom: 20px;
	font-size: 13px;
}

.varify2 .otp-timer-box {
	background-color: #eef4ff;
	border-radius: 8px;
	padding: 14px 16px;
	display: flex;
	align-items: center;
	gap: 12px;
	margin: 16px 0;
}

.varify2 .otp-timer-box.expired {
	background-color: #fdecea;
}

.varify2 .otp-timer-box .timer-icon {
	color: #2563eb;
	font-size: 20px;
}

.varify2 .otp-timer-box.expired .timer-icon {
	color: #dc3545;
}

.varify2 .otp-timer-box .timer-value {
	font-weight: bold;
	color: #2563eb;
	font-size: 18px;
}

.varify2 .otp-timer-box.expired .timer-value {
	color: #dc3545;
	font-size: 14px;
}

.varify2 #resendOtpBtn {
	color: #2563eb;
}

.varify2 #resendOtpBtn:disabled {
	color: #adb5bd;
	cursor: not-allowed;
}

@media ( max-width : 576px) {
	.varify2 .login-card {
		padding: 30px 20px;
	}
	.varify2 .login-div h1 {
		font-size: 18px;
	}
}

.varify2 .alert-success-box {
	background-color: #e8f5e9;
	border-left: 4px solid #2c5f2d;
	color: #1b5e20;
	padding: 12px 15px;
	border-radius: 8px;
	margin-bottom: 20px;
	font-size: 13px;
}

.varify2 .policy-box {
	background-color: #eef4ff;
	border-radius: 8px;
	padding: 16px 18px;
	margin: 16px 0;
}

.varify2 .policy-box .policy-title {
	font-weight: bold;
	color: #2563eb;
	font-size: 14px;
}

.varify2 .policy-box .policy-subtitle {
	font-size: 12px;
	color: #6c757d;
	margin-bottom: 10px;
}

.varify2 .policy-item {
	font-size: 13px;
	color: #6c757d;
	margin-bottom: 4px;
	transition: color 0.2s;
}

.varify2 .policy-item i {
	width: 16px;
	color: #adb5bd;
	transition: color 0.2s;
}

.varify2 .policy-item.valid {
	color: #1b5e20;
}

.varify2 .policy-item.valid i {
	color: #1b5e20;
}
.varify2 .success-icon {
	width: 70px;
	height: 70px;
	border-radius: 50%;
	background-color: #e8f5e9;
	color: #2c5f2d;
	font-size: 34px;
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 10px auto 20px auto;
}

.pd-10{padding:20px;}
.ht-npp{height:70px!important;}
   .olink .links-tabs {
        display: flex;
        justify-content: center;
        align-items: stretch;
        gap: 2px;
        margin-bottom: 0;
    }

   .olink .links-tab {
        border: none;
        background: #e9ecef;
        color: #333;
        padding: 13px 35px;
        font-size: 16px;
        font-weight: 600;
        cursor: pointer;
        border-radius: 8px 8px 0 0;
        transition: all 0.2s ease;
    }

    .olink .links-tab:hover {
        background: #dfe3e7;
    }

    .olink .links-tab.active {
        background: var(--primary);
        color: var(--bg);
    }


    /* =========================================================
       SECTION
       ========================================================= */

    .olink .external-links {
        background: #fff;
        border-radius: 0 0 10px 10px;
        padding: 0 25px 30px;
        box-shadow: 0 3px 12px rgba(0, 0, 0, 0.08);
    }


    /* =========================================================
       SIDE / INNER HEADER
       ========================================================= */

    .olink .section-header {
        background: var(--primary);
        color: var(--bg);
        padding: 13px 20px;
        margin: 0 -25px 25px;
        font-size: 18px;
        font-weight: 600;
        text-align: left;
        border-radius: 0;
    }


    /* =========================================================
       TAB CONTENT
       ========================================================= */

    .olink .tab-content-panel {
        display: none;
    }

    .olink .tab-content-panel.active {
        display: block;
    }


    /* =========================================================
       LOGO GRID
       ========================================================= */

    .olink .logo-grid {
       
    }


    /* =========================================================
       LOGO CARD
       ========================================================= */

    .olink .logo-card {
       
    }

    .olink .logo-card:hover {
        transform: translateY(-4px);
        box-shadow: 0 6px 18px rgba(0, 0, 0, 0.12);
        border-color: var(--primary);
    }

    .olink .logo-card img {
       
    }


    /* =========================================================
       RESPONSIVE
       ========================================================= */

    @media (max-width: 992px) {

       
    }


    @media (max-width: 768px) {

        .olink .links-tab {
            flex: 1;
            padding: 12px 15px;
            font-size: 14px;
        }

    }


    @media (max-width: 480px) {

        .olink .logo-grid {
            grid-template-columns: 1fr;
        }

        .olink .external-links {
            padding-left: 15px;
            padding-right: 15px;
        }

        .olink .section-header {
            margin-left: -15px;
            margin-right: -15px;
        }

    }

#firstPagePreviewContainer{text-align:right; padding:10px;}
#previewAllBtn{float:right; background: var(--primary); color: #f2f2f2; padding:10px; margin-right: -12px; margin-bottom:10px;}
.bhashini-dropdown-btn-icon{background:#f2f2f2; margin:4px;  border-radius:4px; display: flex;
    align-items: center;
    justify-content: center;}

/* Accessibility trigger */
.accessibility-trigger {
    border: 0;    
    padding: 0;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
}

.accessibility-trigger:focus-visible {
    outline: 3px solid #1f5ab2;
    outline-offset: 3px;
}


/* Right Accessibility Panel */
.accessibility-panel {
    position: fixed;
    top: 0;
    right: 0;
    width: 390px;
    max-width: 92vw;
    height: 100vh;
    background: #fff;
    z-index: 99999;

    box-shadow: -5px 0 25px rgba(0, 0, 0, 0.20);

    transform: translateX(100%);
    transition: transform 0.3s ease;

    display: flex;
    flex-direction: column;
}


/* Open state */
.accessibility-panel.open {
    transform: translateX(0);
}


/* Header */
.accessibility-header {
    min-height: 70px;
    background: var(--primary, #1f5ab2);
    color: #fff;

    display: flex;
    align-items: center;
    justify-content: space-between;

    padding: 15px 20px;
}

.accessibility-header h2 {
    margin: 0;
    font-size: 22px;
    font-weight: 600;
}

.accessibility-close {
    border: 0;
    background: transparent;
    color: #fff;

    font-size: 32px;
    line-height: 1;

    cursor: pointer;

    width: 42px;
    height: 42px;

    display: flex;
    align-items: center;
    justify-content: center;
}

.accessibility-close:focus-visible {
    outline: 3px solid #fff;
    outline-offset: 2px;
}


/* Body */
.accessibility-body {
    overflow-y: auto;
    padding: 24px;
    flex: 1;
}

.accessibility-body h3 {
    margin: 0 0 16px;
    font-size: 18px;
    color: #222;
}


/* Options */
.accessibility-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
}

.accessibility-option {
    min-height: 100px;

    border: 1px solid #d6dce5;
    border-radius: 8px;

    background: #fff;

    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;

    gap: 10px;

    cursor: pointer;

    color: #222;
    font-size: 14px;
    font-weight: 500;
}

.accessibility-option:hover {
    background: #f4f7fb;
    border-color: var(--primary, #1f5ab2);
}

.accessibility-option:focus-visible {
    outline: 3px solid #1f5ab2;
    outline-offset: 2px;
}

.accessibility-option-icon {
    width: 38px;
    height: 38px;

    border-radius: 50%;

    background: #eef4fc;
    color: var(--primary, #1f5ab2);

    display: flex;
    align-items: center;
    justify-content: center;

    font-size: 18px;
    font-weight: 700;
}


/* Wide options */
.accessibility-wide-option {
    width: 100%;
    min-height: 52px;

    margin-bottom: 10px;

    border: 1px solid #d6dce5;
    border-radius: 7px;

    background: #fff;

    text-align: left;

    padding: 12px 15px;

    cursor: pointer;

    font-size: 15px;
    color: #222;
}

.accessibility-wide-option:hover {
    background: #f4f7fb;
    border-color: var(--primary, #1f5ab2);
}

.accessibility-wide-option span {
    margin-right: 10px;
}


/* Reset */
.accessibility-reset {
    width: 100%;

    min-height: 50px;

    border: 1px solid #1f5ab2;
    border-radius: 7px;

    background: #fff;

    color: #1f5ab2;

    font-weight: 600;

    cursor: pointer;
}

.accessibility-reset:hover {
    background: #1f5ab2;
    color: #fff;
}


/* Overlay */
.accessibility-overlay {
    position: fixed;
    inset: 0;

    background: rgba(0, 0, 0, 0.35);

    z-index: 99998;

    opacity: 0;
    visibility: hidden;

    transition: opacity 0.3s ease;
}

.accessibility-overlay.show {
    opacity: 1;
    visibility: visible;
}


/* Accessibility settings */
body.accessibility-high-contrast {
    filter: contrast(1.5);
}

body.accessibility-grayscale {
    filter: grayscale(100%);
}

body.accessibility-underline-links a {
    text-decoration: underline !important;
}

body.accessibility-readable-font,
body.accessibility-readable-font * {
     font-family: "Noto Sans Devanagari", "Noto Sans", sans-serif !important;
}


/* Stop animations */
body.accessibility-no-animation *,
body.accessibility-no-animation *::before,
body.accessibility-no-animation *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
}


/* Mobile */
@media (max-width: 480px) {

    .accessibility-panel {
        width: 100%;
        max-width: 100%;
    }

    .accessibility-grid {
        grid-template-columns: 1fr 1fr;
    }
}

.language-selector {
    position: relative;
    display: inline-flex;
    align-items: center;
}

.language-selector .lang {
    display: none;
    position: absolute;
    top: 42px;
    right: 0;
    z-index: 1000;
}


/* Show dropdown */
.language-selector.open .lang {
    display: block;
}


.language-selector #languageSelect {
    min-width: 130px;
    padding: 8px 32px 8px 10px;

    border: 1px solid #ccc;
    border-radius: 5px;

    background: #fff;
    color: #222;

    font-size: 15px;

    cursor: pointer;
}


/* Keyboard focus */
.language-selector #languageSelect:focus {
    outline: 3px solid rgba(31, 90, 178, 0.35);
    outline-offset: 1px;
}

/* Hide Photo and Location from the visible contact table.
   They remain in the DOM so the tooltip can use them. */
.contact-hide-column {
    display: none !important;
}

/* =========================================================
   CEA PUBLICATIONS PAGE
   Unique classes - safe for master.css
   ========================================================= */

.cea-publication-page {
    width: 100%;
    box-sizing: border-box;
    background: #fff;
    color: #000;
    font-family: Arial, Helvetica, sans-serif;
}


/* Main content */
.cea-publication-container {
    width: 100%;
    box-sizing: border-box;
    padding: 25px 60px 35px 60px;
}


/* Page title */
.cea-publication-title {
    text-align: center;
    color: #2878bd;
    font-size: 28px;
    font-weight: 400;
    margin: 0 0 25px 0;
}


/* Contact heading */
.cea-publication-contact-heading {
    text-align: center;
    font-size: 24px;
    font-weight: 400;
    margin: 0 0 20px 0;
}


/* Contact details wrapper
   Centers the complete block */
.cea-publication-contact-details {
    width: fit-content;
    max-width: 100%;
    margin: 0 auto;
    font-size: 14px;
    line-height: 1.8;
    text-align: left;
}


/* Each contact row */
.cea-publication-contact-row {
    display: flex;
    align-items: flex-start;
    margin-bottom: 3px;
}


/* Labels */
.cea-publication-contact-label {
    display: inline-block;
    width: 125px;
    min-width: 125px;
    flex-shrink: 0;
    font-weight: bold;
}


/* Values */
.cea-publication-contact-value {
    display: inline-block;
}


/* Address row */
.cea-publication-address-row {
    display: flex;
    align-items: flex-start;
}


/* Address text */
.cea-publication-address-text {
    flex: 1;
    line-height: 1.8;
}


/* Button wrapper */
.cea-publication-button-wrapper {
    width: 100%;
    text-align: center;
    margin-top: 28px;
}


/* List of Publications button */
.cea-publication-button {
    display: inline-block;
    padding: 10px 26px;

    background: #2878bd;
    color: #fff;

    font-size: 15px;
    font-weight: 600;

    text-decoration: none;
    border-radius: 5px;

    cursor: pointer;

    box-shadow: 0 3px 6px rgba(0, 0, 0, 0.15);

    transition:
        background-color 0.2s ease,
        transform 0.2s ease,
        box-shadow 0.2s ease;
}


.cea-publication-button:hover {
    background: #1d5f96;
    color: #fff;

    transform: translateY(-1px);

    box-shadow: 0 5px 10px rgba(0, 0, 0, 0.18);
}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 768px) {

    .cea-publication-container {
        padding: 20px 20px 30px 20px;
    }

    .cea-publication-title {
        font-size: 25px;
        margin-bottom: 20px;
    }

    .cea-publication-contact-heading {
        font-size: 20px;
        margin-bottom: 18px;
    }

    .cea-publication-contact-details {
        width: 100%;
        max-width: 600px;
        font-size: 14px;
    }

    .cea-publication-contact-label {
        width: 110px;
        min-width: 110px;
    }

    .cea-publication-address-row {
        display: flex;
        align-items: flex-start;
    }

    .cea-publication-address-text {
        line-height: 1.8;
    }
}





/* =========================================================
   CEA Announcement + Quote Section
   All class names / IDs are prefixed with "ceaQt" to avoid
   conflicts with other stylesheets.
   ========================================================= */

/* :root {
  --ceaQt-navy: #12296b;
  --ceaQt-bar-bg: #c8c8c8;
  --ceaQt-section-bg: #ebebeb;
  --ceaQt-font: 'Noto Sans', 'Noto Sans Devanagari', 'Mangal', 'Nirmala UI', 'Segoe UI', Arial, sans-serif;
} */

/* ---------- Announcement bar ---------- */




/* ---------- Quote section ---------- */
.ceaQt-quote-section {
  background: var(--ceaQt-section-bg);
  font-family: var(--ceaQt-font);
 /*  padding: 45px 0; */
  min-height: 300px;
  display: flex;
  align-items: center;
  margin-top:20px;
}

.ceaQt-quote-container {
  max-width: 1300px;
}

.ceaQt-quote-row {
  --bs-gutter-x: 0;
  justify-content: center;
}

.ceaQt-photo-col {
  display: flex;
  justify-content: center;
  margin-right: 97px;
}

.ceaQt-photo-circle {
  width: 260px;
  height: 260px;
  border-radius: 50%;
  background: #fff;
  overflow: hidden;
  box-shadow: 0 4px 14px rgba(0, 0, 0, .08);
  flex-shrink: 0;
}

.ceaQt-photo-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center top;
  display: block;
}

.ceaQt-text-col {
  max-width: 850px;
}

.ceaQt-quote-block {
  position: relative;
}

.ceaQt-quote-mark {
  display: block;
  font-family: Georgia, 'Times New Roman', serif;
  font-weight: 700;
  font-size: 34px;
  line-height: 1;
  color: var(--ceaQt-navy);
  height: 20px;
}

.ceaQt-quote-mark-close {
  margin-top: 10px;
  height: 22px;
}

.ceaQt-quote-text {
  margin: 4px 0 0;
  font-size: 24px;
  line-height: 29px;
  font-weight: 700;
  color: var(--ceaQt-navy);
}

.ceaQt-quote-divider {
  margin: 12px 0 16px;
  border: 0;
  border-top: 1px solid var(--ceaQt-navy);
  opacity: 1;
}

.ceaQt-event-row {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
}

.ceaQt-event-name {
  font-size: 16px;
  line-height: 24px;
  text-transform: uppercase;
  color: var(--ceaQt-navy);
}

.ceaQt-event-date {
  font-size: 16px;
  line-height: 24px;
  color: var(--ceaQt-navy);
}

.ceaQt-view-btn {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 10px 16px;
  margin-top: -2px;
  background: #fff;
  border: 1px solid #180a3d;
  border-radius: 3px;
  color: var(--ceaQt-navy);
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  text-decoration: none;
  white-space: nowrap;
  transition: background .2s, color .2s;
}

.ceaQt-view-btn-icon {
  width: 16px;
  height: 16px;
  fill: currentColor;
  flex-shrink: 0;
}

.ceaQt-view-btn:hover,
.ceaQt-view-btn:focus-visible {
  background: #d1d6e5;
  color: #fff;
}

/* ---------- Language switch (English / Hindi) ----------
   JS sets <html data-ceaqt-lang="en|hi">.
   Without JS, English is shown. */
.ceaQt-lang-hi {
  display: none;
}

html[data-ceaqt-lang="hi"] .ceaQt-lang-en {
  display: none;
}

html[data-ceaqt-lang="hi"] .ceaQt-lang-hi {
  display: inline;
}

/* Hindi text needs slightly more line height for matras */
html[data-ceaqt-lang="hi"] .ceaQt-quote-text {
  line-height: 30px;
}

html[data-ceaqt-lang="hi"] .ceaQt-event-name {
  text-transform: none;
}

/* popup uses its own font stack, make sure Hindi renders there too */
.ceaQt-popup-box {
  font-family: 'Segoe UI', 'Noto Sans', 'Noto Sans Devanagari', 'Nirmala UI', Arial, sans-serif;
}

/* ---------- Demo-only selector (delete with the demo block) ---------- */
.ceaQt-demo-lang {
  padding: 8px 16px;
  background: #fff;
  text-align: right;
}

/* ---------- Bullet-proof icon rules ----------
   Higher specificity + !important so global rules in style.css,
   stylehome.css, all.min.css etc. cannot hide or collapse the SVGs. */
a.ceaQt-view-btn svg.ceaQt-view-btn-icon,
.ceaQt-announcement-title svg.ceaQt-announcement-icon,
button.ceaQt-ticker-toggle svg.ceaQt-toggle-svg {
  display: inline-block !important;
  visibility: visible !important;
  opacity: 1 !important;
  fill: currentColor !important;
  flex: 0 0 auto !important;
  position: static !important;
  overflow: visible;
}

a.ceaQt-view-btn svg.ceaQt-view-btn-icon {
  width: 16px !important;
  height: 16px !important;
  min-width: 16px;
  color: var(--ceaQt-navy);
}

a.ceaQt-view-btn:hover svg.ceaQt-view-btn-icon,
a.ceaQt-view-btn:focus-visible svg.ceaQt-view-btn-icon {
  color: #fff;
}

.ceaQt-announcement-title svg.ceaQt-announcement-icon {
  width: 18px !important;
  height: 18px !important;
}

button.ceaQt-ticker-toggle svg.ceaQt-toggle-svg {
  width: 24px !important;
  height: 24px !important;
}

button.ceaQt-ticker-toggle svg.ceaQt-toggle-svg[hidden] {
  display: none !important;
}

/* ---------- Photo placeholder background (no inline handler needed) ---------- */
.ceaQt-photo-circle {
  background: #dfe3ee;
}

/* ---------- Popup ---------- */
.ceaQt-popup-overlay {
  position: fixed;
  inset: 0;
  z-index: 2000;
  background: rgba(0, 0, 0, .45);
  display: flex;
  align-items: flex-start;
  justify-content: center;
  padding-top: 24px;
  font-family: 'Segoe UI', 'Noto Sans', Arial, sans-serif;
}

.ceaQt-popup-overlay[hidden] {
  display: none;
}

.ceaQt-popup-box {
  width: 100%;
  max-width: 348px;
  background: #f7f5fc;
  border-radius: 18px;
  padding: 20px 20px 18px;
  box-shadow: 0 8px 28px rgba(0, 0, 0, .3);
  color: #1b1b1f;
  outline: none;
  animation: ceaQtPopupIn .18s ease-out;
}

@keyframes ceaQtPopupIn {
  from { opacity: 0; transform: translateY(-12px); }
  to   { opacity: 1; transform: translateY(0); }
}

.ceaQt-popup-header {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 18px;
}

.ceaQt-popup-globe {
  width: 20px;
  height: 20px;
  color: #1b1b1f;
  flex-shrink: 0;
}

.ceaQt-popup-host {
  font-size: 14px;
  font-weight: 700;
}

.ceaQt-popup-message {
  margin: 0 0 18px;
  font-size: 14px;
  line-height: 1.4;
}

.ceaQt-popup-check {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 0 0 14px;
  font-size: 14px;
  color: #45464f;
  cursor: pointer;
}

.ceaQt-popup-checkbox {
  width: 18px;
  height: 18px;
  margin: 0;
  accent-color: #7451d8;
  cursor: pointer;
  flex-shrink: 0;
}

.ceaQt-popup-actions {
  display: flex;
  justify-content: flex-end;
}

.ceaQt-popup-ok {
  min-width: 62px;
  padding: 9px 22px;
  border: 0;
  border-radius: 22px;
  background: #7451d8;
  color: #fff;
  font-size: 14px;
  font-weight: 700;
  cursor: pointer;
  transition: background .2s;
}

.ceaQt-popup-ok:hover,
.ceaQt-popup-ok:focus-visible {
  background: #5d3dbd;
}

@media (prefers-reduced-motion: reduce) {
  .ceaQt-popup-box { animation: none; }
}

/* ---------- Responsive ---------- */
@media (max-width: 1199.98px) {
  .ceaQt-announcement-inner { padding-left: 24px; padding-right: 24px; }
  .ceaQt-photo-col { margin-right: 48px; }
  .ceaQt-quote-text { font-size: 21px; line-height: 27px; }
}

@media (max-width: 991.98px) {
  .ceaQt-photo-col { margin: 0 0 28px; }
  .ceaQt-photo-circle { width: 200px; height: 200px; }
  .ceaQt-quote-section { padding: 36px 20px; }
}

@media (max-width: 575.98px) {
  .ceaQt-announcement-title-text { font-size: 16px; }
  .ceaQt-ticker-link { font-size: 15px; }
  .ceaQt-ticker-wrap { gap: 12px; margin-left: 12px; }
  .ceaQt-quote-text { font-size: 18px; line-height: 24px; }
  .ceaQt-event-row { flex-direction: column; }
}

@media (prefers-reduced-motion: reduce) {
  .ceaQt-ticker-track { animation: none; }
}


















/* =========================================================
   SMALL MOBILE
   ========================================================= */

@media (max-width: 480px) {

    .cea-publication-container {
        padding: 20px 15px 30px 15px;
    }

    .cea-publication-title {
        font-size: 23px;
    }

    .cea-publication-contact-heading {
        font-size: 18px;
    }

    .cea-publication-contact-details {
        font-size: 13px;
    }

    .cea-publication-contact-label {
        width: 100px;
        min-width: 100px;
    }

    .cea-publication-button {
        font-size: 14px;
        padding: 9px 20px;
    }
}

.publication-menu-item1 {
    list-style: none !important;
}

.cea-cookie-banner {
  position: fixed; left: 0; right: 0; bottom: 0; z-index: 99999;
  display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between;
  gap: 16px; padding: 16px 24px;
  background: #fff; border-top: 1px solid #e2e8f0;
  box-shadow: 0 -4px 16px rgba(0,0,0,.12);
}
.cea-cookie-banner[hidden], .cea-cookie-modal[hidden] { display: none; }
.cea-cookie-text { flex: 1 1 420px; }
.cea-cookie-text h2 { font-size: 18px; font-weight: 700; margin: 0 0 6px; color: #111; }
.cea-cookie-text p  { margin: 0; font-size: 16px; color: #222; }
.cea-cookie-actions { display: flex; flex-wrap: wrap; gap: 12px; }
.cea-cookie-actions button,
.cea-cookie-modal-actions button {
  border: 0; border-radius: 4px; padding: 9px 14px;
  background: #dbe7fb; color: #12306b; font-size: 13px; font-weight: 600;
  cursor: pointer; transition: background .2s;
}
.cea-cookie-actions button:hover,
.cea-cookie-modal-actions button:hover { background: #c3d6f8; }
#ceaCookieAccept, #ceaCookieSave { background: #12306b; color: #fff; }
#ceaCookieAccept:hover, #ceaCookieSave:hover { background: #0b2250; }

.cea-cookie-modal {
  position: fixed; inset: 0; z-index: 100000;
  background: rgba(0,0,0,.5); display: flex; align-items: center; justify-content: center;
}
.cea-cookie-modal-box {
  background: #fff; border-radius: 8px; padding: 24px;
  width: min(480px, 92vw); max-height: 90vh; overflow: auto;
}
.cea-cookie-modal-box h3 { margin: 0 0 12px; font-size: 20px; }
.cea-cookie-row {
  display: flex; justify-content: space-between; align-items: center;
  gap: 16px; padding: 12px 0; border-bottom: 1px solid #eee;
}
.cea-cookie-modal-actions { display: flex; justify-content: flex-end; gap: 10px; margin-top: 16px; }

@media (max-width: 768px) {
  .cea-cookie-actions { width: 100%; }
  .cea-cookie-actions button { flex: 1 1 100%; }
}

/* =========================================
   REGISTRATION POPUP
   ========================================= */

.registration-popup-overlay {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.70);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 99999;
    padding: 20px;
}

.registration-popup {
    position: relative;
    background: #ffffff;
    width: min(950px, 95vw);
    max-height: 90vh;
    border-radius: 15px;
    overflow: hidden;
    box-shadow: 0 15px 50px rgba(0, 0, 0, 0.35);
    animation: registrationPopupShow 0.35s ease;
}

.registration-popup-image {
    display: block;
    width: 100%;
    max-height: 70vh;
    object-fit: contain;
}

.registration-popup-footer {
    padding: 15px 20px 20px;
    text-align: center;
    background: #ffffff;
}

.registration-popup-register {
    display: inline-block;
    padding: 11px 35px;
    background: #e77419;
    color: #ffffff !important;
    text-decoration: none !important;
    border-radius: 6px;
    font-size: 17px;
    font-weight: 600;
    transition: all 0.2s ease;
}

.registration-popup-register:hover {
    background: #c95f0e;
    transform: translateY(-1px);
}

.registration-popup-close {
    position: absolute;
    right: 10px;
    top: 8px;
    width: 35px;
    height: 35px;
    border: none;
    border-radius: 50%;
    background: rgba(0, 0, 0, 0.65);
    color: #ffffff;
    font-size: 25px;
    line-height: 30px;
    cursor: pointer;
    z-index: 2;
}

.registration-popup-close:hover {
    background: rgba(0, 0, 0, 0.85);
}

@keyframes registrationPopupShow {
    from {
        opacity: 0;
        transform: scale(0.92);
    }

    to {
        opacity: 1;
        transform: scale(1);
    }
}

/* Mobile */
@media (max-width: 576px) {

    .registration-popup {
        width: 95vw;
        border-radius: 10px;
    }

    .registration-popup-image {
        max-height: 65vh;
    }

    .registration-popup-register {
        width: 80%;
        font-size: 16px;
    }
}