/* ==========================
   CGP BD Suite – Stable Layout
   ========================== */

html, body {
  margin: 0;
  padding: 0;
  height: 100%;
  font-family: 'Montserrat', Arial, sans-serif;
  background-color: #f9f9f9;
  color: #222;
  overflow-x: hidden;
}

/* Sidebar */
.sidebar {
  position: fixed;
  top: 0;
  left: 0;
  width: 230px;
  height: 100vh;
  background-color: #111;
  color: #fff;
  overflow-y: auto;
  z-index: 100;
}
.sidebar a {
  display: block;
  padding: 12px 18px;
  color: #ddd;
  transition: background 0.2s;
}
.sidebar a:hover {
  background-color: #B30000;
  color: #fff;
}

/* Navbar */
.navbar {
  position: sticky;
  top: 0;
  z-index: 200;
  background: #fff;
  border-bottom: 1px solid #ddd;
}

/* Main Content */
.main-content {
  margin-left: 230px;
  padding: 25px 35px;
  min-height: 100vh;
  background-color: #f9f9f9;
  box-sizing: border-box;
  overflow-x: auto; /* allows internal scroll if charts are wide */
  overflow-y: auto;
}

/* Container */
.container-fluid {
  padding: 20px;
  max-width: 100%;
  box-sizing: border-box;
}

/* Cards */
.card {
  border: none;
  border-radius: 10px;
  box-shadow: 0 2px 8px rgba(0,0,0,0.1);
  background-color: #fff;
  margin-bottom: 20px;
}
.card h5 {
  margin-bottom: 1rem;
  color: #B30000;
}

/* Tables */
.table {
  font-size: 0.95rem;
}
.table th {
  background-color: #111;
  color: #fff;
}
.table-responsive {
  overflow-x: auto;
  overflow-y: auto;
  max-width: 100%;
  -webkit-overflow-scrolling: touch;
}

/* Buttons */
.btn-danger {
  background-color: #B30000;
  border: none;
}
.btn-danger:hover {
  background-color: #800000;
}

/* Alerts / badges */
.alert-light {
  background-color: #fff;
  border-left: 4px solid #B30000;
}
.badge.bg-secondary {
  background-color: #555 !important;
}

/* Responsive layout */
@media (max-width: 992px) {
  .sidebar {
    position: relative;
    width: 100%;
    height: auto;
  }
  .main-content {
    margin-left: 0;
    padding: 15px;
  }
}




