:root {
    --sidebar-width: 250px;
    --sidebar-bg: #343a40;
    --sidebar-color: #fff;
    --primary-color: #0977d6;
    --success-color: #4CAF50;
    --danger-color: #F1630F;
    --warning-color: #ffc107;
    --info-color: #4DB6AC;
    --sidebar-width-collapsed: 76px; /* As per your .collapsed width */
    --transition-speed: 0.3s;
}

.table>tbody{
    vertical-align: unset !important;
}

button.btn.btn-success.btn-sm {
    background-color: var(--sidebar-color);
    border: solid 1px var(--primary-color);
    font-family: 'Inter', sans-serif;  /* Inter font applied */
    font-size: 14px;
}

button.btn.btn-info.btn-sm {
    background-color: var(--sidebar-color);
    border: solid 1px var(--primary-color);
    font-family: 'Inter', sans-serif;  /* Inter font applied */
    font-size: 14px;
}

button.btn.btn-danger.btn-sm {
    background-color: var(--sidebar-color);
    border: solid 1px var(--primary-color);
    font-family: 'Inter', sans-serif;  /* Inter font applied */
    font-size: 14px;
}

.btn-success i, .btn-info i, .btn-danger i {
    color: var(--primary-color); 
}

.bg-success {
    background-color: var(--success-color) !important;
}

body {
    background-color: #F4F7FA;
    overflow-x: hidden;
    font-family: 'Inter', sans-serif;  /* Inter font applied */
    font-size: 14px; /* Default font size */
}

.sidebar {
    width: var(--sidebar-width);
    height: 100vh;
    background: var(--sidebar-bg);
    color: var(--sidebar-color);
    position: fixed;
    transition: width 0.3s ease;
    z-index: 1000;
    /* box-shadow: 2px 0 10px rgba(0, 0, 0, 0.1); */
    font-family: 'Inter', sans-serif;  /* Inter font applied */
    font-size: 16px;
}

.sidebar-header {
    padding: 8px 22px;
    background: rgba(0, 0, 0, 0.2);
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
    font-family: 'Inter', sans-serif;  /* Inter font applied */
    font-size: 14px;
}

.sidebar ul.components {
    padding: 0;
}

.sidebar ul li a {
    padding: 14px 20px;
    color: var(--sidebar-color);
    display: block;
    text-decoration: none;
    transition: all 0.3s;
    border-left: 3px solid transparent;
    font-family: 'Inter', sans-serif;  /* Inter font applied */
    font-size: 17px;
}

.sidebar ul li a:hover {
    background: rgba(255, 255, 255, 0.1);
    border-left: 3px solid var(--primary-color);
    color: #d3d3d3;
    border-radius: 0px;
}

.sidebar ul li a i {
    margin-right: 10px;
    width: 20px;
    text-align: center;
}

.sidebar ul li.active > a {
    background: var(--primary-color);
}
.sidebar.collapsed {
     width: var(--sidebar-width-collapsed);
}

.sidebar.collapsed .nav-text {
    display: none;
}


/* Main content when sidebar is collapsed */
.sidebar.collapsed ~ .main-content {
      margin-left: var(--sidebar-collapsed-width, 70px);
    width: calc(100% - var(--sidebar-collapsed-width, 70px));
}
#toggleArrow {
    position: absolute;
    top: 50% !important;
    left: 90%;
    right: 0; /* or adjust as needed */
    width: 30px;
    height: 30px;
    color: var(--sidebar-bg);
    background: white;
    border: none;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.15);
    cursor: pointer;
    z-index: 100;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: right 0.3s ease, transform 0.3s ease;
}
#toggleArrow:hover{
        background: var(--primary-color);
        color:var(--sidebar-color);
}
.sidebar.collapsed #toggleArrow {
        margin-left: -8px !important;
     transform: rotate(180deg);
    transition: transform 0.3s ease;
}
.sidebar.collapsed .nav-text {
display: none;
}

.navbar.py-3{
    background-color:rgba(0, 0, 0, 0.2);
}
.nav-text {
    margin-left: 10px;
}
.top-bar{
    background-color: var(--sidebar-bg);
    border-bottom: 1px solid rgba(255, 255, 255, 0.1); position:sticky; top:0; z-index:10;
}
.main-content {
    margin-left: var(--sidebar-width);
    width: calc(100% - var(--sidebar-width));
    min-height: 100vh;
    transition: margin-left 0.3s ease, width 0.3s ease;
    font-family: 'Inter', sans-serif;
    font-size: 14px;
}
.dashboard-card {
    border-radius: 8px;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    transition: all 0.3s ease;
    margin-bottom: 20px;
    border: none;
    font-family: 'Inter', sans-serif;  /* Inter font applied */
    font-size: 14px;
}

.dashboard-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.1);
}

.card-header {
    border-bottom: 1px solid rgba(0, 0, 0, 0.05);
    font-weight: 600;
    font-family: 'Inter', sans-serif;  /* Inter font applied */
    font-size: 14px;
}

.student-card {
    background-color: var(--danger-color);
}

.parent-card {
    background-color: var(--info-color);
}

.teacher-card {
    background-color: var(--primary-color);
}

.subject-card {
    background-color: var(--success-color);
}

.info-card {
    border-radius: 8px;
    min-height: 100px;
    transition: transform 0.2s ease-in-out;
    font-family: 'Inter', sans-serif;  /* Inter font applied */
    font-size: 14px;
}

.info-card:hover {
    transform: scale(1.02);
}

.info-card h2 {
    margin: 0;
    font-weight: bold;
    font-family: 'Inter', sans-serif;  /* Inter font applied */
    font-size: 30px;
}

.info-card p {
    margin: 0;
    font-size: 1rem;
    font-family: 'Inter', sans-serif;  /* Inter font applied */
    font-size: 14px;
}

.badge-notification {
    position: absolute;
    top: 5px;
    right: 5px;
    font-size: 0.6rem;
    padding: 3px 6px;
    font-family: 'Inter', sans-serif;  /* Inter font applied */
    font-size: 14px;
}

.no-gutters {
    margin-right: 0;
    margin-left: 0;
}

button#fileOptionsDropdown {
    background-color: var(--primary-color);
    border-color: var(--primary-color);
    font-family: 'Inter', sans-serif !important;  /* Inter font applied */
    font-size: 14px!important;
}

button.btn.btn-outline-primary {
    border-color: var(--primary-color);
    font-family: 'Inter', sans-serif;  /* Inter font applied */
    font-size: 14px;
}

button.btn.btn-outline-primary:hover {
    background-color: white !important;
    color: var(--primary-color) !important;
    border-color: var(--primary-color) !important;
}

button.btn.btn-outline-primary:active {
    background-color:  var(--primary-color) !important;
    color: white !important;
    border-color: var(--primary-color) !important;
}

.dropdown-toggle::after {
    display: none !important;
}

.no-gutters > .col,
.no-gutters > [class*="col-"] {
    padding-right: 0;
    padding-left: 0;
}

/* Add Button */
.add-btn,.download-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: var(--success-color);
    color: white;
    border: none;
    border-radius: 7px;
    font-size: 14px;
    cursor: pointer;
    overflow: hidden;
    transition: width 0.3s ease;
    width: 40px;
    height: 40px;
    padding: 0; /* Make it a perfect circle */
    position: relative;
    font-family: 'Inter', sans-serif;  /* Inter font applied */
}

.add-btn i,.download-btn i {
    font-size: 18px;
    transition: margin 0.3s ease;
    font-family: 'Inter', sans-serif;  /* Inter font applied */
    font-size: 14px;
}

.btn-text {
    margin-left: 10px;
    white-space: nowrap;
    opacity: 0;
    transition: opacity 0.3s ease;
    pointer-events: none;
    position: absolute;
    left: 50px; /* Start appearing just after the + */
}


.add-btn:hover {
    width: 215px;
    justify-content: flex-start;
    padding-left: 20px;
}

.add-btn:hover .btn-text {
    opacity: 1;
    pointer-events: auto;
}

.add-btn:hover .btn-text,.download-btn .btn-text{
    opacity: 1;
}

.download-btn:hover{
    width: 150px;
    justify-content: flex-start;
    padding-left: 20px;
}

.custom-header {
    background-color: #F8F8F8; /* Light gray background */
    font-family: 'Inter', sans-serif;  /* Inter font applied */
    font-size: 14px;
}


tbody td tr thead tfoot{
    border-style: dashed !important;
    border-width: 0px 0px 1px 0px !important;
    font-family: 'Inter', sans-serif;  /* Inter font applied */
    font-size: 14px;
}

th {
    border-style: dashed !important;
    border-width: 0px 0px 1px 0px !important;
    font-family: 'Inter', sans-serif;  /* Inter font applied */
    font-size: 14px!important;
}

.badge{
    font-size: 12px!important;
    font-weight: 400!important;
    --bs-badge-padding-x:5px;
    --bs-badge-padding-y:5px;
    border-color: #6C757D;
    box-shadow: #6C757D;
}
.badge ,bg-warning{

    background-color: #ffbf002f!important;
    color:#ffbf00;
}

.bg-success{
    background-color: #4caf4f34 !important;
    color:#4CAF50;
}

/* Notification Dropdown*/

.markallread:hover{
color: var(--primary-color) !important;
}
 .dropdown-item {
        transition: background-color 0.3s ease;
    }
.dropdown-item:hover {
        background-color: #f0f0f0; /* Change the color when hovered */
        border-radius: 8px; /* Optional: ensure rounded corners on hover */
    }
    .dropdown-item:active{
        color: var(--primary-color);
    }

.dropdown-item.text-danger {
    color: #dc3545;
}
/* Custom width for the notification dropdown */
.custom-dropdown-width {
  width: 300px; 
}

.dropdown-menu .text-center {
  text-align: center!important;
  width: 100%; 
  padding: 0; 
}
.dropdown-menu .dropdown-item{
    font-size: 12px;
}

/* Adjust the button style and hover effect */
.dropdown-toggle {
    background: none;
    border: none;
    padding: 0;
    font-size: 18px;
}

i.bi.bi-three-dots-vertical{

        color: #6b757d;

}
i.bi.bi-three-dots-vertical:hover{

        color: var(--primary-color);

}

.table>:not(caption)>*>* {
    background-color: transparent !important;
}

.card.dashboard-card h5 {
    font-size: 1.1rem;
    font-weight: bold;
    font-family: 'Inter', sans-serif;  /* Inter font applied */
    font-size: 14px;
}

#siteStatsChart {
    max-width: 100%;
    background-color: #fff;
    border-radius: 8px;
    padding: 0px;
    font-family: 'Inter', sans-serif;  /* Inter font applied */
    font-size: 14px;
}

.site-stats {
    width: 67%;
  
}

.events {
    width: 33%;
}

/* Sorting Styles */
.sortable {
    cursor: pointer;
    user-select: none;
    transition: background-color 0.2s;
    font-family: 'Inter', sans-serif;  /* Inter font applied */
    font-size: 14px;
}

.sortable:hover {
    background-color: #F8F9FA;
}

.sort-icon {
    margin-left: 5px;
    color: #6C757D;
    font-size: 0.8em;
    font-family: 'Inter', sans-serif;  /* Inter font applied */
    font-size: 14px;
}

.sort-asc {
    color: #007BFF;
}

.sort-desc {
    color: #007BFF;
}

.table th {
    vertical-align: middle;
    font-family: 'Inter', sans-serif;  /* Inter font applied */
    font-size: 14px;
}


/* Styling for the bulk upload section */
.bulk-upload-section {
    font-size: 14px; /* Make the text smaller */
}

/* Smaller form control */
/* .bulk-upload-section .form-control-sm {
    font-size: 13px; 
    padding: 8px;
} */

/* Button styling */
.bulk-upload-section .btn-sm {
    font-size: 14px; /* Smaller button font size */
    padding: 6px 12px; /* Adjust padding for the smaller button */
}

/* Hover Effects */
.info-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 6px 18px rgba(0, 0, 0, 0.15);
}

.small-image {
    width: 3rem; /* Custom width for even smaller image */
    height: 3rem;
    font-family: 'Inter', sans-serif;  /* Inter font applied */
    font-size: 14px;
}


/* Search font size */
input[type="search"] {
    font-size: 14px !important;
    font-family: 'Inter', sans-serif !important;
}
.form-control{
    font-size: 14px!important;
}

/* tab-nav css */
.nav-pills .nav-link.active, .nav-pills .show>.nav-link {
    color: var(--sidebar-color);
    background-color: var(--primary-color);
}

/* Apply border-radius and shadow to tab-pane */
.tab-pane {
   box-shadow: 0px 0px 8px 1px rgb(0 0 0 / 8%); /* Soft shadow */
    border-radius: 12px; /* Rounded corners */
    padding: 20px 50px; /* Add padding inside the tab content */
}

/* Optional: Active Tab Styling */
.tab-pane.show.active {
    box-shadow: none; /* Stronger shadow for active tab */
    border-radius: 12px;
}

/* Style for the input group and the eye icon */
.input-group {
    position: relative;
}

.input-group .form-control {
    height: calc(2.25rem + 2px); /* Make sure the input height is consistent */
    border-radius: 12px; /* Rounded corners for the input */
}

.input-group .input-group-text {
    cursor: pointer;
    background-color: #fff; /* Ensure the background matches the input field */
    border-left: none; /* Remove the border between the input and icon */
    height: calc(2.25rem + 2px); /* Match the height of the input field */
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0 10px; /* Adjust padding to make it look centered */
}

/* Style the eye icon */
.input-group .input-group-text i {
    font-size: 1.2em; /* Increase the size of the eye icon */
    color: #555; /* Color of the eye icon */
}

/* Optional: Add hover effect */
.input-group .input-group-text:hover {
    background-color: #f0f0f0; /* Light gray background on hover */
}

/* Make the cursor pointer on hover */
.input-group .input-group-text:hover i {
    cursor: pointer; /* Change cursor to pointer when hovered */
}

/* Activity Tab Styling */
#pills-activity .filter-activity {
  border: 1px solid #ddd; /* Add border */
  background-color: #f8f9fa; /* Light background color */
  padding: 20px;
  border-radius: 12px;
  position: sticky; /* Make the filter sticky */
  top: 20px; /* Distance from the top of the viewport */
}

#pills-activity .filter-activity h4 {
  font-weight: 600;
  margin-bottom: 20px;
}

#pills-activity .filter-activity .form-label {
  font-weight: 500;
}

/* Activity Stream */
.activity-stream {
  padding-left: 20px;
}

.activity-stream h4 {
  font-size: 1.2rem;
  margin-top: 30px;
}

.activity-card {
  background-color: #fff;
  padding: 15px;
  border-radius: 12px;
  box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.1); /* Subtle shadow */
  /* display: none; Initially hide all activity cards */
}

.activity-header {
  display: flex;
  align-items: center;
}

.activity-icon {
  font-size: 1.5rem;
  color: #007bff; /* Blue color for the icon */
}

.activity-details {
  flex: 1;
}

.activity-details span {
  font-weight: bold;
}

.activity-card small {
  display: block;
  margin-top: 10px;
  font-size: 0.875rem;
  color: #6c757d;
}

/* Add hover effect for the activity cards */
.activity-card:hover {
  box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.1);
}


/* Add hover effect for the activity cards */
.activity-card:hover {
  box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.1);
}


/* Ensures inactive tabs don't take up space */
.tab-pane {
  display: none;
}

/* Only show the active tab's content */
.tab-pane.show {
  display: block;
    box-shadow: none;
}

/* Profile picture wrapper to position the pencil icon */
/* .profile-picture-wrapper {
  position: relative;
  display: inline-block;
} */

.pencil-icon {
    display: none;
    position: absolute;
    bottom: 30%;
    right: 24%;
    /* background-color: rgba(0, 0, 0, 0.5); */
    padding: 5px;
    border-radius: 78%;
    color: #ffffff;
    cursor: pointer;
    font-size: 20px;
    transition: transform 0.3s ease;
}
.profile-picture-wrapper:hover .pencil-icon {
  display: block;  /* Display the pencil icon */
  transform: scale(1.2);  /* Slight zoom effect on hover */
}
/* Hover effect for pencil icon */
.pencil-icon:hover {
    display: block;
  transform: scale(1.2);  /* Slight zoom effect on hover */
}
/* Style the profile image */


/* .profile-picture-wrapper:hover .profile-picture {
  transform: scale(1.1);  Slight zoom effect on hover
} */
.breadcrumb-item+.breadcrumb-item::before{
    color:white;
}

/* Profile Cover Image */
.profile-cover {
    width: 100%;
    border-radius: 10px 10px 0px 0px;
    height: 250px;
    background-image: url('../../assests/images/555.jpg'); /* background cover image*/
    background-size: cover;
    background-position: center;
    position: relative;
}

.profile-picture-wrapper {
    position: relative;
  display: inline-block;
}

.profile-picture {
    width: 150px;
    height: 102px;
    object-fit: cover;
    border: none;
  transition: transform 0.3s ease;
}


/* Profile Card Styling */
.profile-card {
    background-color: white;
    padding: 30px 20px;
    box-shadow: 0px!important;
    border-radius: 10px;
    margin-top: -50px;
}

/* User Info Styling */
h3 {
    font-size: 1.5rem;
    margin-top: 10px;
}

.profile-actions a {
    margin: 5px;
}

.profile-actions .btn-primary {
    background-color: #007bff;
    border-color: #007bff;
}

.profile-actions .btn-primary:hover {
    background-color: #0056b3;
    border-color: #0056b3;
}

/* Styling for Profile Update Form */
.form-label {
    font-weight: bold;
}

/* .form-control {
    margin-bottom: 10px;
} */

/* Personal Information Section Styling */
h5 {
    font-weight: bold;
}

.text-center button {
    margin-top: 20px;
}

/* Row Layout for Two Columns */
.row {
    margin-top: 20px;
}

.col-md-6 {
    margin-bottom: 20px;
}

.progress-bar {
    height: 14px !important; /* Controls the height of the progress bar */
    border-radius: 5px; /* Optional: adds rounded corners to the progress bar */
}
.progress {
    height: 14px; /* Thin progress bar */
    border-radius: 5px; /* Optional: rounded corners for the progress bar */
}

/* tab css  */
/* Personal Information */
.personal-info {
  text-align: left;  /* Align text to the left */
}

.personal-info h4 {
  font-size: 16px;
  font-weight: bold;
  margin-bottom: 20px;
}

.personal-info p {
  font-size: 1rem;
  margin-bottom: 10px;
}

.personal-info strong {
  font-weight: 600;
}

/* Profile Picture */
.profile-picture-wrapper {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 4%;
    height: 105px;
}



/* Form Styling */
h4 {
    font-size: 16px;
    font-weight: bold;
}

label {
    font-weight: 600;
}

button {
    margin-top: 20px;
}

 


.dropdown-menu .text-center {
  text-align: center!important;
  width: 100%; 
  padding: 0; 
}
.dropdown-menu .dropdown-item{
    font-size: 12px;
}
  .right-column {
            background-image: url('../../assests/images/cover2.jpg'); /* Check the image path */
            background-size: cover;
            background-position: center;
            /* height: 100vh;  */
        }

        .p-4{
                    border-radius: 0px!important;

        }


/* Registeration from */


        .no-gap {
            padding: 0 !important;
            margin: 0 !important;
        }
 
        /* Table */
    .card.pt-4.pb-4,.announcement.card.pb-4, .setting.card.pb-4, .card.my-4, .teacher-profile.mt-3 {
        margin-left: 44px;
        margin-right: 44px;
        margin-bottom: 44px;
        }

        
        /* Responsive Styles */
@media (max-width: 768px) {
    .sidebar {
        transform: translateX(-100%);
    }

    .sidebar.active {
        transform: translateX(0);
    }

    .main-content {
        width: 100%;
        margin-left: 0;
          /* padding-left: 10px !important;
    padding-right: 10px !important; */
    }

    .site-stats {
        width: 100%;
        margin-top: -11px;
    }

    .events {
        width: 100%;
    }
    .summarycard {
        display: none;
    }
    .dropdown-menu-end[data-bs-popper] {
    right: 0;
    left: 0;
    }
    .card.pt-4.pb-4,.announcement.card.pb-4, .setting.card.pb-4, .card.my-4 {
    margin: 20px 11px ;
    }
    .exams.row.mt-4.mx-5{
        padding-top: 40px;
        margin: 0px !important;
    }
   .exams-overview.d-flex.flex-row.gap-4{
        display: flex !important;
        flex-direction: column !important;
    }    
      #mobileSidebar .nav-link {
    padding: 10px 15px;
    color: var(--sidebar-color);
  }
  #mobileSidebar .nav-link:hover {
    background: var(--primary-color);
  }

  .sidebar-header{
    color: var(--sidebar-color);
  }
  .card-header.d-flex.justify-content-between.align-items-center.bg-white {
    gap: 8px;
    }
    .calendar.row.mx-5 {
    margin: 30px 0px !important;
    display: flex;
    flex-direction: column;
}
.col-md-4.mb-4.w-50 {
    width: 100% !important;
}
    .final-exam.container.mt-5 {
        margin: 0px !important;
    }
}
   @media (min-width: 768px) {
    #mobileSidebar, #sidebarOverlay {
      display: none !important;
    }
}


/* notification  page  tab style  */
  .tab-box {
    font-weight: 600;
    cursor: pointer;
    position: relative;
  }

  .tab-box.active {
    border-bottom: 2px solid #0977D6;
    padding-bottom: 5px;
  }

 

  .notification-item {
    position: relative;
  }

  .notification-item i {
    font-size: 1.2rem;
  }

  .notification-item span {
    font-size: 16px;
  }


  /* dasboard page school calendar */
   .calendar-grid {
        display: grid;
        grid-template-columns: repeat(7, 1fr);
        gap: 5px;
        text-align: center;
    }
    .calendar-cell {
        border: 1px solid #ccc;
        padding: 10px;
        border-radius: 4px;
        position: relative;
        cursor: pointer;
        min-height: 50px;
    }
    .event-dot {
        width: 8px;
        height: 8px;
        border-radius: 50%;
        border: 2px solid #4caf50;
        position: absolute;
        bottom: 4px;
        left: 50%;
        transform: translateX(-50%);
    }


    /* sidebar anouncement dropdown */

.dropdown-menu.no-radius {
    background-color: transparent !important;
    border: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    text-align: center;
}

/* Hide + icon when sidebar is collapsed */
.sidebar.collapsed .plus-icon {
    display: none !important;
}

.custom-dropdown-below {
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    margin-top: 0;
    padding-top: 0;
    z-index: 999;
}

/* Style View Announcements link */
.view-announcements-link {
    justify-content: center;
    text-align: center;
    color: white;
}

/* Style Manage Announcements link */
.manage-announcements-link {
    justify-content: center;
    text-align: center;
    color: white;
}

/* Hover effect */
.view-announcements-link:hover,
.manage-announcements-link:hover {
    background-color: rgba(255, 255, 255, 0.1);
}
