/* Color changing Text -- Begin */
.color-change {
    font-size: 24px;
    font-weight: bold;
    animation: colorCycle 3s infinite;
}

@keyframes colorCycle {
    0%   { color: red; }
    25%  { color: blue; }
    50%  { color: green; }
    75%  { color: orange; }
    100% { color: purple; }
}
/* Color changing Text -- End */
/* Events Navigation Buttons - Begin */
.glow-card {
  border: 2px solid rgba(128, 0, 128, 0.6); /* purple border */
  border-radius: 0.75rem; /* keep rounded corners */
  box-shadow: 0 0 20px 5px rgba(128, 0, 128, 0.4); /* glow with spread */
}
.eventnav-btn {
  margin-top: 0 !important;   /* remove top margin */
  margin-bottom: 0 !important;/* remove bottom margin */
  border: 2px solid rgba(128, 0, 128, 0.6); /* purple border */
  box-shadow: 0 0 20px 5px rgba(128, 0, 128, 0.4); /* glow */
  width: 60px;              /* rectangular width */
  font-size: 2rem;          /* large arrow symbols */
  border-radius: 12px;      /* curved edges */
  background-color: #6f42c1; /* custom color (purple) */
  color: #fff;              /* white arrow */
  transition: background-color 0.3s ease;
}

.eventnav-btn:hover {
  background-color: #5a32a3; /* darker shade on hover */
}
/* Events Navigation Buttons - End */

/* Text Blink -- Begin */
.blink-bg {
    display: flex;
    justify-content: center;   /* center horizontally */
    align-items: center;       /* center vertically */
    width: 80vw;
    height: 5vh;
    font-size: 1.25vw;            /* scales with screen width */
    font-weight: bold;
    color: white;
    white-space: nowrap;       /* keep text in one line */
    animation: bgBlink 1s infinite;
}
@keyframes bgBlink {
    /*0%   { background-color: #FF7F7F; }*/
    50%  { background-color: #ADD8E6; }
    100% { background-color: #90EE90; }
}
/* Text Blink -- End */

/* Committee Members Menu -- Begin */
.menu-partition {
    flex: 0 0 25%;   /* Fixed 25% width */
    height: 100vh;
    background-color: #f8f9fa;
    border-right: 1px solid #ddd;
    overflow: hidden; /* No scroll here */
}
.content-partition {
    flex: 1;         /* Take remaining 75% */
    height: 100vh;
    overflow-y: auto; /* Enable vertical scroll */
    padding: 1rem;
}
.thumbnail {
    cursor: pointer;
    transition: transform 0.2s;
    width: 75px;
    height: auto;
}
.thumbnail:hover {
    transform: scale(1.05);
}
/* Committee Members Menu -- End */

/* Alert Window - Begin */
/* Gradient button */
.btn-gradient {
  background: linear-gradient(45deg, #6a11cb, #2575fc);
  color: #fff;
  border: none;
  transition: 0.3s;
}
.btn-gradient:hover {
  opacity: 0.9;
}
/* Modal content styling */
.modal-content {
  animation: fadeInUp 0.4s ease;
}
/* Smooth animation */
@keyframes fadeInUp {
  from { transform: translateY(30px); opacity: 0; }
  to { transform: translateY(0); opacity: 1; }
}
/* Alert Window - End */

.navbar { background-color: #343a40; }
.navbar a { color: #0d6efd !important; }
.navbar a:hover { color: #0a58ca !important; }
.navbar .container-fluid {
  flex-direction: column !important; /* force vertical stacking */
  align-items: center;               /* center horizontally */
}
.social-menu { position: fixed; left: -150px; top: 75%; transition: left 0.3s; }
.social-menu:hover { left: 0; }
.social-menu a { display: block; padding: 12px; color: #fff; background: #495057; text-decoration: none; }
.social-menu a:hover { background: #212529; }
body.font-size-1 { font-size: 0.75rem !important; }
body.font-size-2 { font-size: 0.875rem !important; }
body.font-size-3 { font-size: 1rem !important; }   /* default */
body.font-size-4 { font-size: 1.125rem !important; }
body.font-size-5 { font-size: 1.25rem !important; }
body.font-size-6 { font-size: 1.5rem !important; }
body.font-size-7 { font-size: 2rem !important; }

/* Room Booking From Date and To Date in a single Line -- Begin */
.date-row {
    display: flex;
    align-items: center;
    gap: 20px; /* spacing between inputs */
}
.date-row label {
    margin-right: 10px;
	white-space: nowrap; /* Prevent label text from breaking */
}
/* Room Booking From Date and To Date in a single Line -- End */

/* Scroll Message - Begin */
.scroll-container {
    width: 100%;              /* full width across screen */
    overflow: hidden;
    white-space: nowrap;
    box-sizing: border-box;
    background: none;         /* remove background color */
}
.scroll-text {
    display: inline-block;
    padding-left: 100%;
    animation: scroll-left 60s linear infinite;
    color: yellow;            /* yellow text color */
    font-weight: bold;        /* optional for emphasis */
}
@keyframes scroll-left {
    0% { transform: translateX(0); }
    100% { transform: translateX(-100%); }
}
/* Scroll Message - End */

/* History Page CSS - Begin */
.paragraph-block {
	font-family: 'Quicksand', sans-serif;
    margin-bottom: 2rem;
    padding: 1.5rem;
    border-radius: 8px;
    background-color: #ffffff;
    box-shadow: 0 2px 6px rgba(0,0,0,0.1);
}
.paragraph-title {
	font-family: 'Quicksand', sans-serif;
    color: #0d6efd;
    font-size: 1.3rem;
    font-weight: bold;
    margin-bottom: 0.5rem;
}
.paragraph-subtitle {
	font-family: 'Quicksand', sans-serif;
    color: #20c997;
    font-size: 1.1rem;
    font-weight: 600;
    margin-bottom: 0.5rem;
}
.paragraph-content {
	font-family: 'Quicksand', sans-serif;
    color: #00008B;
    font-size: 1.125rem;
    line-height: 1.4;
	text-align: justify;
	padding: 0.5rem 1rem;
}
.paragraph-icon {
	font-family: 'Quicksand', sans-serif;
    color: #dc3545;
    margin-right: 0.5rem;
    font-size: 1.3rem;
}
.toggle-icon {
    font-size: 1.2rem;
    cursor: pointer;
}
/* History Page CSS - End */

body.font-size-1, body.font-size-1 p, body.font-size-1 li, body.font-size-1 a, 
body.font-size-1 span, body.font-size-1 div, body.font-size-1 h1, body.font-size-1 h2, 
body.font-size-1 h3, body.font-size-1 h4, body.font-size-1 h5, body.font-size-1 h1 {
  font-size: 0.75rem !important;
}

body.font-size-2, body.font-size-2 p, body.font-size-2 li, body.font-size-2 a, 
body.font-size-2 span, body.font-size-2 div, body.font-size-2 h1, body.font-size-2 h2, 
body.font-size-2 h3, body.font-size-2 h4, body.font-size-2 h5, body.font-size-2 h2 {
  font-size: 0.875rem !important;
}

body.font-size-3, body.font-size-3 p, body.font-size-3 li, body.font-size-3 a, 
body.font-size-3 span, body.font-size-3 div, body.font-size-3 h1, body.font-size-3 h2, 
body.font-size-3 h3, body.font-size-3 h4, body.font-size-3 h5, body.font-size-3 h3 {
  font-size: 1rem !important;
}

body.font-size-4, body.font-size-4 p, body.font-size-4 li, body.font-size-4 a, 
body.font-size-4 span, body.font-size-4 div, body.font-size-4 h1, body.font-size-4 h2, 
body.font-size-4 h3, body.font-size-4 h4, body.font-size-4 h5, body.font-size-4 h4 {
  font-size: 1.125rem !important;
}

body.font-size-5, body.font-size-5 p, body.font-size-5 li, body.font-size-5 a, 
body.font-size-5 span, body.font-size-5 div, body.font-size-5 h1, body.font-size-5 h2, 
body.font-size-5 h3, body.font-size-5 h4, body.font-size-5 h5, body.font-size-5 h5 {
  font-size: 1.25rem !important;
}

body.font-size-6, body.font-size-6 p, body.font-size-6 li, body.font-size-6 a, 
body.font-size-6 span, body.font-size-6 div, body.font-size-6 h1, body.font-size-6 h2, 
body.font-size-6 h3, body.font-size-6 h4, body.font-size-6 h5, body.font-size-6 h6 {
  font-size: 1.5rem !important;
}

body.font-size-7, body.font-size-7 p, body.font-size-7 li, body.font-size-7 a, 
body.font-size-7 span, body.font-size-7 div, body.font-size-7 h1, body.font-size-7 h2, 
body.font-size-7 h3, body.font-size-7 h4, body.font-size-7 h5, body.font-size-7 h7 {
  font-size: 2rem !important;
}

.fs-1 { font-size: calc(1.375rem + 1.5vw) !important; }
.fs-2 { font-size: calc(1.325rem + 0.9vw) !important; }
.fs-3 { font-size: calc(1.3rem + 0.6vw) !important; }
.fs-4 { font-size: calc(1.275rem + 0.3vw) !important; }
.fs-5 { font-size: 1.25rem !important; }
.fs-6 { font-size: 1rem !important; }

/* Begin - Google Translate Tool */
/* Dropdown menu background */
.dropdown-menu {
  background-color: #f0f8ff !important;   /* very light blue */
  border-radius: 8px;
  border: 1px solid #d0e7ff;
}

/* Default dropdown item text */
.dropdown-item {
  color: #000 !important;                 /* force black text */
  font-family: 'Quicksand', sans-serif;
  font-weight: 500;
}

/* Hover state */
.dropdown-item:hover {
  background-color: #cce7ff !important;
  color: #000 !important;
}

/* Active (selected) state */
.dropdown-item.active,
.dropdown-item:active {
  background-color: #99ccff !important;   /* highlight */
  color: #000 !important;                 /* keep text black */
}

/* Fix for navbar-dark inheritance */
.navbar-dark .dropdown-menu .dropdown-item {
  color: #000 !important;
}
/* End - Google Translate Tool */

/* Social Bar - Begin */
/* Position the sidebar container on the screen */
.social-sidebar {
  position: fixed;
  left: 10;
  top: 41%;
  z-index: 9999;
  display: flex;
  align-items: flex-start;
}
/* Tab handle graphic */
.social-trigger-icon {
  background-color: #FFA500; /*#00ff00; #007bff; - Color of Side Bar*/
  color: white;
  padding: 8px 8px;
  cursor: pointer;
  border-radius: 0 5px 5px 0;
  /*box-shadow: 2px 2px 5px rgba(0,0,0,0.2);*/
  writing-mode: vertical-rl;
  text-combine-upright: all;
  font-weight: bold;
}
/* Off-screen starting position wrapper */
.social-links-container {
  display: flex;
  flex-direction: column;
  justify-content: space-around;   /* equal spacing around icons */
  align-items: center;             /* center horizontally */

  /* UPDATED: Changed from solid black (#222) to a modern deep-blue gradient */
  /* background: linear-gradient(135deg, #1e3c72, #2a5298); */
  /* background: linear-gradient(135deg, #cce7ff, #e6f2ff); */ /* Powder Blue */
  background: linear-gradient(135deg, #e0ffff, #b0e0e6);  /* Aqua Mist */

  /* UPDATED: Increased rounding to create a soft, rounded rectangle box */
  border-radius: 12px; 

  /* Added a bit of internal spacing so content does not hug the sharp edges */
  padding: 8px; 
  box-shadow: 3px 3px 15px rgba(0,0,0,0.3);
  position: absolute;
  left: 0;
  top: 0;
  transform: translateX(-100%);
  transition: transform 0.3s ease-in-out;
  width: 60px;                     /* slightly wider for centering */
  height: 250px;                   /* fixed height for spacing */
}
/* Layout spacing rules for link references */
.social-link {
  font-size: 2rem;       /* icon size */
  color: #555;
  transition: color 0.3s ease;
  margin: 0;             /* remove side margins */
  /*margin: 0 10px;*/
}
/* Trigger reveal animations on user hover */
.social-sidebar:hover .social-links-container {
  /* Adjusted slightly to account for the new padded rounded edges */
  transform: translateX(42px); 
}
/* Interaction color definitions */
/* UPDATED: Ensures hover highlights stay cleanly within the rounded corners */
.social-link:hover { 
  background-color: rgba(255, 255, 255, 0.15); 
  /*color: #fff; */
  /*padding-left: 22px; */ /* Subtle slide-right effect on hover */
}
.social-link.ar { color: #FF5722; }          /* Arattai orange */
.social-link.tg { color: #0088cc; }          /* Telegram blue */
/*.social-link.yt { color: #FF0000; }        */  /* YouTube red */
.social-link.yt:hover { color: #CC0000; }    /* Darker red on hover */
.social-link.wa:hover { color: #25D366; }    /* darker green 128C7E*/
.social-link.fb:hover { color: #1877F2; }    /* Facebook blue 3b5998 */
.social-link.tw:hover { color: #1DA1F2; }    /* Twitter blue 1da1f2*/
.social-link.ig:hover { color: #c13584; }    /* Instagram pink */
/* Social Bar - End */

/* Begin of Accordion CSS */
/* Accordion container */
.accordion {
  margin-top: 20px;
}

/* Card styling inside accordion */
.accordion .card {
  border: 1px solid #ddd;
  border-radius: 6px;
  margin-bottom: 10px;
  box-shadow: 0 2px 4px rgba(0,0,0,0.05);
}

/* Card body */
.accordion .card-body {
  background-color: #f9f9f9;
  font-size: 0.95rem;
  line-height: 1;
}

/* Title styling */
.accordion .card-title {
  font-weight: 600;
  color: #100;
}

/* Read More button */
.accordion .btn-link {
  text-decoration: none;
  font-weight: 500;
  color: #007bff;
  padding: 0;
}

.accordion .btn-link:hover {
  color: #0056b3;
}

/* End of Accordion CSS */

/* Begin - Photo Gallery CSS */
/* Gallery row spacing */
.row {
  margin-top: 1rem;
}

/* Card styling */
.card {
  border: none;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.card:hover {
  transform: translateY(-5px);
  box-shadow: 0 6px 20px rgba(0, 0, 0, 0.15);
}

/* Thumbnail images */
.card-img-top {
  cursor: pointer;
  transition: transform 0.2s;
  width: 150px;
  height: 25px;
  border-radius: 0.5rem 0.5rem 0 0;
}

/* Card body text */
.card-body {
  padding: 0.75rem;
  font-size: 0.9rem;
  color: #555;
}

/* Folder headings */
h4 a {
  text-decoration: none;
  color: #0d6efd; /* Bootstrap primary color */
}

h4 a:hover {
  text-decoration: underline;
}

/* Back button spacing */
.btn-primary.mb-3 {
  margin-bottom: 1.5rem !important;
}

.card-img-top {
  height: 150px;       /* adjust as needed */
  object-fit: cover;   /* crop neatly */
}
/* End - Photo Gallery CSS */

/* Begin - News Modal Popup */
.modal-content {
  border-radius: 12px;
  overflow: hidden;
}

.modal-body {
  background: #fdfdfd;
}

.modal-footer {
  background: #f1f1f1;
}
/* End - News Modal Popup */