@import url('https://fonts.googleapis.com/css2?family=Quicksand:wght@300;400;500;600;700&display=swap');
@import url('https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.4/css/all.min.css');

body {
  background-color: #f5ece9!important;
  font-family: 'Quicksand', sans-serif;
}
.card.custom-card {
  border: none;
  border-radius: 15px;
  transition: transform 0.3s, box-shadow 0.3s;
  box-shadow: 0px 4px 6px rgba(0, 0, 0, 0.1);
}

.card.custom-card:hover {
  transform: translateY(-10px);
  box-shadow: 0px 10px 15px rgba(0, 0, 0, 0.2);
}

.bg-gradient-dark {
  background: linear-gradient(135deg, #1a1a2e, #16213e);
}

.bg-gradient-pink {
  background: linear-gradient(135deg, #ff758c, #ff7eb3);
}

.bg-gradient-success {
  background: linear-gradient(135deg, #56ab2f, #a8e063);
}

.bg-gradient-info {
  background: linear-gradient(135deg, #36d1dc, #5b86e5);
}

.bg-gradient-dark1 {
  background: linear-gradient(135deg, #353565, #2b407a);
}

.bg-gradient-pink1 {
  background: linear-gradient(135deg, #d21232, #d66996);
}

.bg-gradient-success1 {
  background: linear-gradient(135deg, #c4941b, #bca817);
}

.bg-gradient-info1 {
  background: linear-gradient(135deg, #cc34d1, #d05be5);
}


.text-uppercase {
  text-transform: uppercase;
  font-weight: bold;
}

.card-text {
  font-size: 14px;
  margin-top: 10px;
}

.text-decoration-none:hover {
  text-decoration: none;
}

.text-white {
  color: white !important;
}
body.modal-open .container {
  -webkit-filter: blur(2.5px);
  -moz-filter: blur(2.5px);
  -o-filter: blur(2.5px);
  -ms-filter: blur(2.5px);
  filter: blur(2.5px);
}

body.modal-open .carousel {
  -webkit-filter: blur(2.5px);
  -moz-filter: blur(2.5px);
  -o-filter: blur(2.5px);
  -ms-filter: blur(2.5px);
  filter: blur(2.5px);
}

body.modal-open footer {
  -webkit-filter: blur(2.5px);
  -moz-filter: blur(2.5px);
  -o-filter: blur(2.5px);
  -ms-filter: blur(2.5px);
  filter: blur(2.5px);
}

.mt-55 {
  margin-top: 55px;
}

.mt-60 {
  margin-top: 60px;
}

.mt-70 {
  margin-top: 70px;
}

.mt-80 {
  margin-top: 80px;
}

.mt-100 {
  margin-top: 100px;
}

.mt-120 {
  margin-top: 120px;
}

.mt-150 {
  margin-top: 150px;
}

#wrapper {
  overflow-x: hidden;
}

#sidebar-wrapper {
  min-height: 100vh;
  margin-left: -15rem;
  transition: margin 0.25s ease-out;
}

#sidebar-wrapper .sidebar-heading {
  padding: 0.15rem ;
  font-size: 1.2rem;
}

#sidebar-wrapper .list-group {
  width: 15rem;
}

#page-content-wrapper {
  min-width: 100vw;
}

body.sb-sidenav-toggled #wrapper #sidebar-wrapper {
  margin-left: 0;
}

@media (min-width: 768px) {
  #sidebar-wrapper {
    margin-left: 0;
  }

  #page-content-wrapper {
    min-width: 0;
    width: 100%;
  }

  body.sb-sidenav-toggled #wrapper #sidebar-wrapper {
    margin-left: -15rem;
  }
}

.list-group-item-light.list-group-item-action.active {
  
  background: linear-gradient(135deg, #56ab2f, #a8e063);
  
}



.overflow-hidden {
  overflow: hidden !important;
}

*[dir=rtl] .mfs-3, html:not([dir=rtl]) .mfe-3 {
  margin-right: 1rem!important;
}

*[dir="rtl"] .mfe-3 {
  margin-left: 1rem !important;
}

.border-top-success {
  /* border-top: 3px solid #198754!important; */
  border-top: 5px solid #ced6d6 !important;
}
.text-icon {
  color :#009999 !important
}
.bg-pink {
  background-color: #d602a5 !important;
}
.bg-hijau {
  background-color: #4eb486 !important;
}
.bg-light {
  /* background: #198754!important;
  border-top: 5px solid #ffb93a; */
  /* background-color: #253F5B!important; */
      /* background-color: #3e08c6!important; */
      background-image: linear-gradient(
  255deg,
  hsl(240deg 100% 20%) 0%,
  hsl(252deg 96% 23%) 11%,
  hsl(257deg 92% 27%) 22%,
  hsl(261deg 87% 30%) 33%,
  hsl(264deg 82% 34%) 44%,
  hsl(267deg 79% 38%) 56%,
  hsl(269deg 76% 42%) 67%,
  hsl(272deg 74% 46%) 78%,
  hsl(274deg 73% 49%) 89%,
  hsl(276deg 81% 53%) 100%
);
    /* background-color: #253F5B; */
  /* border-top: 5px solid #d7664d; */
  color: white;
}

.bg-sidebar {
  background-color: #111823!important;
}
.bg-navbar {
   background: linear-gradient(135deg, #56ab2f, #a8e063);
}

.text-second{
  color: #a6adad!important;
}
.bg-default {
  background-color: #75076d!important;
}
.btn-default {
  background-color: #1a2942!important;
  color:white!important;
}
.btn-default:hover {
  color: #fff;
  /* background-color: #116f44;
  border-color: #116f44; */
  background-color: #2e4670!important;
  border-color: #2e4670!important;
}
.list-group-item-light {
  color: #fefefe!important;
   background: linear-gradient(135deg, #56ab2f, #a8e063);
}
.list-group-item:hover {
  color: #fefefe!important;
  background-color: #0a4adf!important;
}

.navbar-light .navbar-nav .nav-link {
  color: white;
}

.navbar-light .navbar-nav .nav-link:hover {
  color: white;
}

.btn-info {
  color: #fff;
  /* background-color: #116f44;
  border-color: #116f44; */
  background-color: #140775;
  border-color: #140775!important;
}

.btn-info:hover {
  color: #fff;
  /* background-color: #116f44;
  border-color: #116f44; */
  background-color: #140775!important;
  border-color: #140775!important;
}

.btn-info:active {
  color: #fff;
  /* background-color: #116f44;
  border-color: #116f44; */
  background-color: #140775!important;
  border-color: #140775!important;
}

.btn-success {
  color: #fff;
  /* background-color: #116f44;
  border-color: #116f44; */
  /* background-color: #340880;
  border-color: #1a2942!important; */
  background: linear-gradient(135deg, #56ab2f, #a8e063);
  border-color: #3fcdca!important;
}
.btn-successs {
  color: #fff;
  /* background-color: #116f44;
  border-color: #116f44; */
  background-color: #088f3c;
  border-color: #0b9a40!important;
}

.btn-successs:hover {
  color: #fff;
  /* background-color: #116f44;
  border-color: #116f44; */
  background-color: #04a957!important;
  border-color: #39cb60!important;
}
.btn-success:hover {
  color: #fff;
  /* background-color: #116f44;
  border-color: #116f44; */
  background-color: #1a2942!important;
  border-color: #1a2942!important;
}
.draggable-modal {
  cursor: move;
}
.btn-success:active {
  color: #fff;
  /* background-color: #116f44;
  border-color: #116f44; */
  background-color: #39393a!important;
  border-color: #39393a!important;
}

.btn-success:disabled {
  color: #fff;
  /* background-color: #116f44;
  border-color: #116f44; */
  background-color: #39393a!important;
  border-color: #39393a!important;
}

.btn-success:focus {
  color: #fff;
  /* background-color: #116f44;
  border-color: #116f44; */
  background-color: #39393a!important;
  border-color: #39393a!important;
  box-shadow: none!important;
}

.btn-success-dark {
  color: #fff;
  /* background-color: #116f44;
  border-color: #116f44; */
  background-color: #39393a!important;
  border-color: #39393a!important;
}

.btn-success-dark:hover {
  color: #fff;
  /* background-color: #116f44;
  border-color: #116f44; */
  background-color: #39393a!important;
  border-color: #39393a!important;
}

.ql-editor{
  min-height: 200px !important;
  max-height: 300px;
  overflow: hidden;
  overflow-y: scroll;
  overflow-x: scroll;
}

.map-container {
  height: 300px;
  width: 100%;
}

.mapboxgl-ctrl-geocoder {
  font: 15px/20px 'Helvetica Neue', Arial, Helvetica, sans-serif;
  position: relative;
  background-color: white;
  width: 33.3333%;
  min-width: 260px;
  max-width: 360px;
  z-index: 1;
  border-radius: 3px;
}

.mapboxgl-popup-content {
  position: relative;
  background: #fff;
  border-radius: .5rem;
  box-shadow: 0 1px 2px rgb(0 0 0 / 10%);
  padding: 10px 10px 15px;
  pointer-events: auto;
}

.navbar-custom {
  /* background-color: #198754;
  border-top: 5px solid #ffb93a; */
  background-color: #8269e0;
  border-top: 5px solid #b0b6da;
}

.navbar-light .navbar-nav .nav-link {
  color: white
}

.navbar-light .navbar-nav .nav-link:hover {
  color: white !important
}

.dropdown-menu {
  padding: 5px;
}

.dropdown-item:hover {
  color: white;
  /* background-color: #198754; */
  background-color: #1f057b;
  border-radius: 5px;
}

.nav-link.active {
  color: white;
}

.navbar-light .navbar-nav .nav-link.active, .navbar-light .navbar-nav .show>.nav-link {
  color: white;
}

.navbar-light .navbar-nav .nav-link:focus, .navbar-light .navbar-nav .nav-link:hover {
  color: white;
}

.mt-minus-87 {
  margin-top: -87px;
}

.ms-8 {
  margin-left: 8rem!important;
}

.dropdown-menu {
  border: 0;
}

.image-gallery-slide .image-gallery-image {
  height: 350px;
  width: 100%;
  object-fit: cover;
  border-radius: .5rem;
}

.image-gallery-thumbnail {
  opacity: .3;
}

.image-gallery-thumbnail.active {
  opacity: 1;
  border: none;
}

.image-gallery-thumbnail:hover {
  border: none;
  transition: none;
}

.image-gallery-thumbnail-image {
  border-radius: .5rem!important;
  height: 70px;
  object-fit: cover;
}

.image-gallery-left-nav .image-gallery-svg, .image-gallery-right-nav .image-gallery-svg {
  width: 50px;
  height: 50px;
  z-index: 9;
  top: 50%;
  background: white;
  border: none;
  border-radius: 30px;
}

.image-gallery-icon {
  /* color: #689f38; */
  color: #8269e0;
}

.image-gallery-icon:hover {
  /* color: #689f38; */
  color: #8269e0;
  transition: none!important;
}

.icon-info-green {
  /* background-color: #689f38; */
  background-color: #8269e0;
  border-radius: 35px;
  box-shadow: 0 3px 6px 0 rgb(4 172 233 / 20%);
  width: 45px!important;
  height: 45px!important;
  text-align: center;
  color: #fff;
  vertical-align: middle;
  display: inline-block;
  margin-bottom: 20px;
}

.icon-info-green i {
  position: relative;
  top: calc(47% - 11px);
}

.carousel-control-next {
  text-decoration: none!important;
}

.carousel-control-prev {
  text-decoration: none!important;
}

.carousel-custom {
  z-index: 9;
  background: white;
  border: none;
  border-radius: 50%;
  padding: 20px;
  width: 55px;
}

.footer_top {
  padding: 120px 0px 200px;
  position: relative;
  overflow-x: hidden;
  margin-bottom: 15px;
}

.footer_top .footer_bg {
  position: absolute;
  bottom: 0;
  background: url("../images/footer_bg.png") no-repeat scroll center 0;
  width: 100%;
  height: 266px;
}

.footer_top .footer_bg .footer_bg_one {
  background: url("../images/volks.gif") no-repeat center center;
  width: 330px;
  height: 105px;
  background-size:100%;
  position: absolute;
  bottom: 0;
  left: 30%;
  -webkit-animation: myfirst 22s linear infinite;
  animation: myfirst 22s linear infinite;
}

.footer_top .footer_bg .footer_bg_two {
  background: url("../images/cyclist.gif") no-repeat center center;
  width: 88px;
  height: 100px;
  background-size:100%;
  bottom: 0;
  left: 38%;
  position: absolute;
  -webkit-animation: myfirst 30s linear infinite;
  animation: myfirst 30s linear infinite;
}

@-moz-keyframes myfirst {
  0% {
    left: -25%;
  }
  100% {
    left: 100%;
  }
}

@-webkit-keyframes myfirst {
  0% {
    left: -25%;
  }
  100% {
    left: 100%;
  }
}

@keyframes myfirst {
  0% {
    left: -25%;
  }
  100% {
    left: 100%;
  }
}
.about p {
  margin: 0;
  text-indent: 2rem;
  text-align: justify;
}
.bg-green {
  /* background-color: #43a047; */
  background-color: #1e293b;
}

.bg-grey {
  /* background-color: #43a047; */
  /* background-color: #253F5B; */
  background-color: #0f172a;
  /* background-color: #f4f3fa; */
}
.bg-second2 {
  /* background-color: #43a047; */
  /* background-color: #253F5B; */
  background-color: #1e293b;
  /* background-color: #f4f3fa; */
}
.btn-grey {
  background-color: #1e293b !important;
  border-color: #2d3643 !important;
}
.avatar {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  overflow: hidden;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 2px solid #fff; /* Ganti warna sesuai keinginan */
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
}

.avatar img {
  max-width: 100%;
  height: auto;
}
.btn-grey:hover {
  background-color: #505968 !important;
  border-color: #505968 !important;
}
.btn-cart {
  position: fixed;
  bottom: 100px;
  border-radius: 50px;
  z-index: 100;
  right: 8%;
  box-shadow: 0px 10px 13px -7px #000000, 5px 5px 15px 5px rgba(0, 0, 0, 0);
}

#count-cart {
  font-size: 12px;
  background: #bf0b1c;
  color: #fff;
  vertical-align: top;
  margin-left: -5px; 
}

.nav-justified .nav-item, .nav-justified>.nav-link {
  flex-basis: 0;
  flex-grow: 0.2;
  text-align: center;
}

@media only screen and (max-width: 768px) {
  /* For mobile phones: */
  .nav-justified .nav-item, .nav-justified>.nav-link {
    flex-basis: 0;
    flex-grow: 2;
    text-align: center;
  }
}

.img-carousel {
  height: 250px !important;
  object-fit: cover !important;
  width: 100% !important;
}

.carousel-custom {
  z-index: 9;
  background: white;
  border: none;
  border-radius: 50%;
  padding: 10px;
  width: 37px;
}

.carousel-control-next, .carousel-control-prev {
  position: absolute;
  top: 0;
  bottom: 0;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 15%;
  padding: 0;
  color: #fff;
  text-align: center;
  background: 0 0;
  border: 0;
  opacity: .5;
  transition: opacity .15s ease;
}

.product .card-body {
  background: #f7f7f7;
}

.active>.page-link, .page-link.active {
    z-index: 3;
    color: #fff;
    background-color: #1e293b;
    border-color: #1e293b;
}

.page-link {
  position: relative;
  display: block;
  color: #1e293b;
  text-decoration: none;
  background-color: #fff;
}

.rounded-top {
  border-top-left-radius: .5em !important;
  border-top-right-radius: .5em !important;
}

.rounded-top-none {
  border-top-left-radius: 0px !important;
  border-top-right-radius: 0px !important;
  border-bottom-left-radius: .5em !important;
  border-bottom-right-radius: .5em !important;
}
.rounded-img {
  border-top-left-radius: 15px !important;
  border-top-right-radius: 15px !important; /* Ubah nilai sesuai dengan tingkat lengkungan yang diinginkan */
  width: 100%;
  height: auto; /* Untuk memastikan gambar tetap proporsional */
}
.rounded-img-full {
  border-radius: 15px; /* Ubah nilai sesuai dengan tingkat lengkungan yang diinginkan */
  width: 100%;
  height: auto; /* Untuk memastikan gambar tetap proporsional */
}

.rounded-tops {
  border-top-left-radius: 10px !important;
  border-top-right-radius: 10px !important; /* Ubah nilai sesuai dengan tingkat lengkungan yang diinginkan */
  border-bottom-left-radius: 10px !important;
  border-bottom-right-radius: 10px !important;
  width: 90%;
  height: 40px; /* Untuk memastikan gambar tetap proporsional */
}
.bg-gray {
  background-color: #d8d8d8 !important;
}

.w-5 {
  width: 10%;
}

.btn-transparent {
  background-color: transparent !important;
}

.text-success {
  color: #289195!important;
}
.text-light {
  color: #9a9899!important;
}
.modal-backdrop.show {
    opacity: 0 !important;
}

.input-group-text-search {
  display: flex;
  align-items: center;
  padding: 0.375rem 0.75rem;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #ffffff;
  text-align: center;
  white-space: nowrap;
  background-color: #000066;
  border: 1px solid #ced4da;
  border-radius: 0.375rem;
}
/* Styles for Chat-like Blockquote */
blockquote {
  margin: 0 0 1rem;
  padding: 6px;
  border-left: 5px solid #cd641a;
  border-radius: .5rem;
  background: #f7ebdb;
  color: #5a5858;
}

blockquote p {
  margin-top: initial;
  margin-bottom: initial;
}

#darkmode blockquote {
  margin: 0px 0px 1rem;
  padding: 6px;
  border-left: 5px solid rgb(127 130 134);
  border-radius: 0.5rem;
  background: rgb(68 74 84);
  color: rgb(255 255 255);
}
.code-badge-language {
  display: none!important;
}
.highlight-line[style] {
  border-left: 3px solid #58bf7e!important;
  padding: 5px;
}
pre {
  background-color: #2d3037;
  color: white;
  padding: 15px;
  border-radius: 5px;
  overflow-x: auto;
  font-family: 'Courier New', Courier, monospace;
}

code {
  font-family: 'Courier New', Courier, monospace;
}


pre::before {

  font-size: 1.5em;
  color: #f6eeee;
  margin-right: 5px;
}

pre::after {
  content: "";
  clear: both;
  display: table;
}

/* Styles for Right-aligned pre Block */
pre.right {
  background-color: #e1f3fd;
  text-align: right;
}

pre.right::before {
  margin-right: 0;
  margin-left: 5px;
}

/* Optional: Add some extra styles for inline pre */
p pre {
  font-size: 0.9em;
}

/* Gaya untuk tombol Salin */
.copy-button {
  cursor: pointer;
  background-color: #4caf50;
  color: white;
  border: none;
  padding: 5px 10px;
  border-radius: 3px;
  margin-top: 5px;
}
.video-responsive {
  overflow: hidden;
  padding-bottom: 56.25%;
  position: relative;
  height: 0;
}

.video-responsive iframe {
  left: 0;
  top: 0;
  height: 100%;
  width: 100%;
  position: absolute;
}

.bg-seconds {
  background-color: #807d7d;
}
/* Add this to your CSS file */
.custom-link {
  text-decoration: none;
  color: inherit; /* Inherit the color from the parent */
}


.jumbotron {
  background-color: #0f172a;
  color: #ffffff;
  padding: 50px 25px;
  text-align: left;
}
.course-container {
  padding: 50px 0;
}
.course-card {
  margin-bottom: 20px;
}

.bg-dash1 {
  background-image: linear-gradient(
    45deg,
    hsl(29deg 38% 34%) 0%,
    hsl(354deg 51% 44%) 50%,
    hsl(312deg 98% 37%) 100%
  );
}
.bg-dash2{
  background-image: linear-gradient(
    45deg,
    hsl(188deg 90% 58%) 0%,
    hsl(205deg 100% 41%) 50%,
    hsl(269deg 98% 24%) 100%
  );
}
.bg-dash3{
  background-image: linear-gradient(
  45deg,
  hsl(0deg 0% 0%) 0%,
  hsl(232deg 100% 19%) 50%,
  hsl(225deg 100% 23%) 100%
);
}

.bg-dash4{
  background-image: linear-gradient(
    45deg,
    hsl(0deg 0% 20%) 0%,
    hsl(27deg 47% 23%) 50%,
    hsl(31deg 100% 23%) 100%
  );
}

/* =========================================
   MODERN SIDEBAR STYLES (Cosmetic Store Theme)
   ========================================= */

/* 1. Sidebar Background & Width */
#sidebar-wrapper {
    background: linear-gradient(180deg, #0f172a 0%, #1e293b 100%) !important;
    box-shadow: 4px 0 24px rgba(0,0,0,0.2) !important;
    border-right: 1px solid rgba(255,255,255,0.05);
}

.bg-sidebar {
    background: transparent !important; /* Let gradient show */
}

/* 2. Menu Items */
.list-group-item-action {
    background-color: transparent !important;
    border: none;
    color: #94a3b8 !important; /* Slate 400 */
    font-weight: 500;
    font-size: 0.95rem;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
    border-radius: 12px !important;
    margin-bottom: 6px !important;
    padding: 14px 20px !important;
    display: flex;
    align-items: center;
    width: 92% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    position: relative;
    overflow: hidden;
}

/* Hover State */
.list-group-item-action:hover {
    background-color: rgba(255, 255, 255, 0.08) !important;
    color: #f8fafc !important; /* Slate 50 */
    transform: translateX(4px);
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
}

.list-group-item-action:hover svg {
    transform: scale(1.1);
    color: #ec4899 !important; /* Pink 500 */
    transition: transform 0.2s ease;
}

/* Active State */
.active.list-group-item-light,
.list-group-item-action.active {
    background: linear-gradient(135deg, #ec4899 0%, #8b5cf6 100%) !important;
    color: #ffffff !important;
    box-shadow: 0 10px 15px -3px rgba(236, 72, 153, 0.3), 0 4px 6px -2px rgba(236, 72, 153, 0.1) !important;
}

.active svg,
.active .text-second,
.active .less-strong {
    color: #ffffff !important;
}

/* 3. Icons */
.list-group-item-action svg {
    margin-right: 16px !important;
    font-size: 1.1rem;
    color: #64748b; /* Slate 500 */
    transition: all 0.3s ease;
}

/* 4. Headers (Cosmetic Store, etc.) */
.text-light h6 {
    color: #64748b !important; /* Slate 500 */
    font-size: 0.7rem !important;
    font-weight: 800 !important;
    text-transform: uppercase;
    letter-spacing: 0.15em;
    margin-top: 2rem !important;
    margin-bottom: 0.75rem !important;
    padding-left: 1.5rem !important;
    opacity: 0.8;
}

/* 5. Horizontal Rule */
hr.text-white {
    border-top: 1px solid rgba(255,255,255,0.1) !important;
    opacity: 1 !important;
    margin: 1.5rem 1rem !important;
}

/* 6. Dashboard / Brand Area */
.sidebar-heading {
    padding: 1.5rem !important;
    background: rgba(0,0,0,0.2);
    margin-bottom: 1rem;
}

/* 7. Rounded Tops Override */
.rounded-tops {
    border-radius: 12px !important;
    width: 92% !important;
}

/* 8. Inner Div Alignment */
.list-group-item-action > div {
    display: flex !important;
    align-items: center !important;
    width: 100% !important;
}

/* 9. Permission Toggle Specific */
.list-group-item-action > div.justify-content-between {
    justify-content: space-between !important;
}

/* =========================================
   GLOBAL COSMETIC THEME OVERRIDES
   ========================================= */

/* 1. Page Background */
body, #page-content-wrapper {
    background-color: #f8fafc !important; /* Slate 50 */
    font-family: 'Quicksand', sans-serif !important;
}

/* 2. Navbar */
.bg-navbar {
    background: #ffffff !important;
    border-bottom: 1px solid rgba(0,0,0,0.05);
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.05);
}
.bg-navbar .text-dark, .bg-navbar h6 {
    color: #1e293b !important; /* Dark Slate */
    font-weight: 700;
    letter-spacing: 0.5px;
}
.bg-navbar .btn-success-dark {
    background: transparent !important;
    color: #1e293b !important;
    border: 1px solid #e2e8f0 !important;
    box-shadow: none !important;
}
.bg-navbar .btn-success-dark:hover {
    background: #f1f5f9 !important;
}

/* 3. Cards */
.card, .custom-card {
    border: none !important;
    border-radius: 16px !important;
    background: #ffffff !important;
    box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.05), 0 4px 6px -2px rgba(0, 0, 0, 0.025) !important;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
    margin-bottom: 24px !important;
}
.card:hover {
    transform: translateY(-2px);
    box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04) !important;
}
.card-header {
    background: transparent !important;
    border-bottom: 1px solid #f1f5f9 !important;
    padding: 20px 24px !important;
}
.card-header h5, .card-header h6 {
    font-weight: 700 !important;
    color: #1e293b !important;
    margin: 0 !important;
}
.card-body {
    padding: 24px !important;
}

/* 4. Buttons */
.btn-primary, .btn-success {
    background: linear-gradient(135deg, #ec4899 0%, #8b5cf6 100%) !important;
    border: none !important;
    color: white !important;
    font-weight: 600 !important;
    padding: 10px 20px !important;
    border-radius: 10px !important;
    box-shadow: 0 4px 6px -1px rgba(236, 72, 153, 0.3) !important;
    transition: all 0.2s ease !important;
}
.btn-primary:hover, .btn-success:hover {
    transform: translateY(-2px);
    box-shadow: 0 10px 15px -3px rgba(236, 72, 153, 0.4) !important;
    filter: brightness(1.1);
}
.btn-secondary {
    background: #e2e8f0 !important;
    color: #475569 !important;
    border: none !important;
    font-weight: 600 !important;
}
.btn-danger {
    background: #ef4444 !important;
    border: none !important;
    box-shadow: 0 4px 6px -1px rgba(239, 68, 68, 0.3) !important;
}

/* 5. Tables */
.table {
    margin-bottom: 0 !important;
}
.table thead th {
    background-color: #f8fafc !important;
    color: #64748b !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    font-size: 0.75rem !important;
    letter-spacing: 0.1em !important;
    border-bottom: 1px solid #e2e8f0 !important;
    padding: 16px !important;
}
.table tbody td {
    padding: 16px !important;
    vertical-align: middle !important;
    color: #334155 !important;
    border-bottom: 1px solid #f1f5f9 !important;
}
.table-hover tbody tr:hover {
    background-color: #fce7f3 !important; /* Very subtle pink tint */
}

/* 6. Form Inputs */
.form-control, .form-select {
    border-radius: 10px !important;
    border: 1px solid #e2e8f0 !important;
    padding: 12px 16px !important;
    background-color: #fff !important;
    transition: all 0.2s !important;
}
.form-control:focus, .form-select:focus {
    background-color: #fff !important;
    border-color: #d8b4fe !important; /* Light Purple */
    box-shadow: 0 0 0 4px rgba(216, 180, 254, 0.3) !important;
}

/* 7. Modal */
.modal-content {
    border-radius: 20px !important;
    border: none !important;
    box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25) !important;
}
.modal-header {
    border-bottom: 1px solid #f1f5f9 !important;
    padding: 24px !important;
}
.modal-footer {
    border-top: 1px solid #f1f5f9 !important;
    padding: 24px !important;
}

/* 8. Pagination */
.page-link {
    border: none !important;
    border-radius: 8px !important;
    margin: 0 2px !important;
    color: #64748b !important;
    font-weight: 500 !important;
}
.page-link.active, .active > .page-link {
    background: linear-gradient(135deg, #ec4899 0%, #8b5cf6 100%) !important;
    color: white !important;
    box-shadow: 0 4px 6px -1px rgba(236, 72, 153, 0.3) !important;
}