/* Admin: Quicksand font - only for /admin */
@font-face {
  font-family: 'Quicksand';
  src: url('../assets/fonts/Quicksand-Light.ttf') format('truetype');
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Quicksand';
  src: url('../assets/fonts/Quicksand-Regular.ttf') format('truetype');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Quicksand';
  src: url('../assets/fonts/Quicksand-Medium.ttf') format('truetype');
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Quicksand';
  src: url('../assets/fonts/Quicksand-SemiBold.ttf') format('truetype');
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Quicksand';
  src: url('../assets/fonts/Quicksand-Bold.ttf') format('truetype');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

/* Apply Quicksand everywhere inside admin dashboard
   Override CSS variables so var(--font-primary) etc. resolve to Quicksand */
.rbt-admin-wrapper {
  --font-primary: 'Quicksand', sans-serif;
  --font-secondary: 'Quicksand', sans-serif;
  font-family: 'Quicksand', sans-serif !important;
}
.rbt-admin-wrapper *,
.rbt-admin-wrapper.rbt-main-wrapper *,
.rbt-admin-wrapper .rbt-dashboard-area,
.rbt-admin-wrapper .rbt-dashboard-content,
.rbt-admin-wrapper .content {
  font-family: 'Quicksand', sans-serif !important;
}
/* Override .rbt-font-primary when inside admin */
.rbt-admin-wrapper .rbt-font-primary {
  font-family: 'Quicksand', sans-serif !important;
}

/* Feather (and other icon fonts) must keep their font-family so icons render.
   Quicksand is applied to .rbt-admin-wrapper * so we restore icon font for icon elements. */
.rbt-admin-wrapper [class^="feather-"],
.rbt-admin-wrapper [class*=" feather-"],
.rbt-admin-wrapper .feather {
  font-family: 'feather' !important;
}

/* CourseCurriculum.css */

/* Table hover effects */
.table-hover tbody tr {
    transition: background-color 0.15s ease-in-out;
  }
  
  .table-hover tbody tr:hover {
    background-color: rgba(0, 0, 0, 0.02);
  }
  
  /* Cursor pointer for clickable elements */
  .cursor-pointer {
    cursor: pointer;
  }
  
  /* Chevron button - accordion toggle */
  .btn-link:focus {
    box-shadow: none;
  }
  
  .feather-chevron-right,
  .feather-chevron-down {
    transition: transform 0.2s ease-in-out;
  }
  
  /* Icon hover transitions */
  .lesson-icon {
    transition: color 0.15s ease-in-out;
  }
  
  /* Button hover effects - custom styling if needed */
  .btn-icon-hover {
    transition: all 0.15s ease-in-out;
    border-radius: 0.25rem;
    padding: 0.375rem;
  }
  
  .btn-icon-hover:hover {
    transform: translateY(-1px);
  }
  
  /* Lesson name hover effect */
  .lesson-name {
    transition: color 0.15s ease-in-out;
  }
  
  .lesson-name:hover {
    color: #0d6efd !important;
  }
  
  /* Badge styles - ensuring proper opacity */
  .badge.bg-success.bg-opacity-25 {
    background-color: rgba(25, 135, 84, 0.1) !important;
  }
  
  .badge.bg-primary.bg-opacity-25 {
    background-color: rgba(13, 110, 253, 0.1) !important;
  }
  
  .badge.bg-warning.bg-opacity-25 {
    background-color: rgba(255, 193, 7, 0.1) !important;
  }
  
  .badge.bg-secondary.bg-opacity-25 {
    background-color: rgba(108, 117, 125, 0.1) !important;
  }
  
  /* Indent levels for hierarchical structure */
  .ps-4 {
    padding-left: 1.5rem !important;
  }
  
  .ps-5 {
    padding-left: 3rem !important;
  }
  
  .ps-7 {
    padding-left: 3rem !important;
  }
  
  .ps-8 {
    padding-left: 5rem !important;
  }
  
  .ps-10 {
    padding-left: 4.5rem !important;
  }
  
  .ps-11 {
    padding-left: 7rem !important;
  }
  
  .ps-13 {
    padding-left: 6rem !important;
  }
  
  .ps-14 {
    padding-left: 7.5rem !important;
  }
  
  .ps-16 {
    padding-left: 7.5rem !important;
  }
  
  .ps-19 {
    padding-left: 9rem !important;
  }
  
  /* Table cell padding adjustments */
  .table > :not(caption) > * > * {
    padding: 0.75rem 1rem;
  }
  
  /* Smooth transitions for all interactive elements */
  button,
  .cursor-pointer,
  [role="button"] {
    transition: all 0.15s ease-in-out;
  }
  
  /* Focus states for accessibility */
  button:focus,
  .cursor-pointer:focus {
    outline: 2px solid #0d6efd;
    outline-offset: 2px;
  }
  
  /* Responsive adjustments */
  @media (max-width: 768px) {
    .ps-4 {
      padding-left: 1rem !important;
    }
    
    .ps-5 {
      padding-left: 1.5rem !important;
    }
  
    .ps-7 {
      padding-left: 2rem !important;
    }
    
    .ps-8 {
      padding-left: 2.5rem !important;
    }
  
    .ps-10 {
      padding-left: 3rem !important;
    }
    
    .ps-11 {
      padding-left: 3.5rem !important;
    }
  
    .ps-13 {
      padding-left: 4rem !important;
    }
    
    .ps-14 {
      padding-left: 4.5rem !important;
    }
  
    .ps-16 {
      padding-left: 5rem !important;
    }
  
    .ps-19 {
      padding-left: 5.5rem !important;
    }
    
    .table > :not(caption) > * > * {
      padding: 0.5rem 0.75rem;
    }
  }
  
  /* Feather icon alignment */
  .feather {
    vertical-align: middle;
    display: inline-block;
  }
  
  /* Gap utility for button groups */
  .gap-2 {
    gap: 0.5rem !important;
  }
