/* Basic Styling */
body {
    overflow-x: hidden;
}

#sidebar-wrapper {
    min-height: 100vh;
    margin-left: -15rem;
    transition: margin .25s ease-out;
}

#sidebar-wrapper .sidebar-heading {
    padding: 0.875rem 1.25rem;
    font-size: 1.2rem;
}

#sidebar-wrapper .list-group {
    width: 15rem;
}

#page-content-wrapper {
    min-width: 100vw;
}

#wrapper.toggled #sidebar-wrapper {
    margin-left: 0;
}

@media (min-width: 768px) {
    #sidebar-wrapper {
        margin-left: 0;
    }

    #page-content-wrapper {
        min-width: 0;
        width: 100%;
    }

    #wrapper.toggled #sidebar-wrapper {
        margin-left: -15rem;
    }
}

/* Dropdown Animation */
.collapse {
    transition: height 0.3s ease;
}

.list-group-item.active {
    background-color: #0d6efd !important;
    border-color: #0d6efd !important;
}

.border-left-primary {
    border-left: .25rem solid #4e73df!important;
}

.border-left-success {
    border-left: .25rem solid #1cc88a!important;
}

.text-gray-300 {
    color: #dddfeb!important;
}

/* Responsive Table Styling */
@media (max-width: 576px) {
  .table-responsive-mobile {
    border: none;
  }
  .table-responsive-mobile table,
  .table-responsive-mobile thead,
  .table-responsive-mobile tbody,
  .table-responsive-mobile th,
  .table-responsive-mobile td,
  .table-responsive-mobile tr {
    display: block;
    width: 100%;
  }
  .table-responsive-mobile thead {
    display: none;
  }
  .table-responsive-mobile tbody tr {
    margin-bottom: 1.2rem;
    background: #fff;
    border-radius: 8px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.04);
    padding: 0.7rem 0.5rem;
    border: 1px solid #eee;
  }
  .table-responsive-mobile td {
    position: relative;
    padding-left: 48%;
    border: none;
    border-bottom: 1px solid #f3f3f3;
    min-height: 36px;
    font-size: 0.98rem;
    background: none;
  }
  .table-responsive-mobile td:last-child {
    border-bottom: none;
  }
  .table-responsive-mobile td:before {
    position: absolute;
    left: 0;
    top: 0;
    width: 46%;
    padding-left: 10px;
    white-space: nowrap;
    font-weight: 600;
    color: #888;
    font-size: 0.92rem;
    content: attr(data-label);
    text-transform: capitalize;
  }
}

/* Mobile-friendly card table */
.responsive-table-list {
  width: 100%;
  margin: 0;
  padding: 0;
}
@media (max-width: 576px) {
  .responsive-table-list .review-row {
    display: block;
    background: #fff;
    border-radius: 10px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.04);
    margin-bottom: 1.2rem;
    padding: 1rem 0.7rem;
    border: 1px solid #eee;
  }
  .responsive-table-list .review-label {
    font-weight: 600;
    color: #888;
    font-size: 0.97rem;
    margin-bottom: 2px;
    display: block;
  }
  .responsive-table-list .review-value {
    font-size: 1.05rem;
    margin-bottom: 8px;
    display: block;
    word-break: break-word;
  }
  .responsive-table-list .review-action {
    margin-top: 10px;
  }
}
@media (min-width: 577px) {
  .responsive-table-list {
    display: table;
    width: 100%;
  }
  .responsive-table-list .review-row {
    display: table-row;
    border-bottom: 1px solid #eee;
  }
  .responsive-table-list .review-label {
    display: none;
  }
  .responsive-table-list .review-value {
    display: table-cell;
    padding: 0.7rem 0.5rem;
    vertical-align: middle;
    font-size: 1rem;
    border-bottom: none;
  }
  .responsive-table-list .review-action {
    display: table-cell;
    padding: 0.7rem 0.5rem;
    vertical-align: middle;
    text-align: center;
  }
}
@media (max-width: 576px) {
  .table-responsive-mobile { display: none !important; }
  .responsive-table-list { display: block !important; }
}
@media (min-width: 577px) {
  .table-responsive-mobile { display: block !important; }
  .responsive-table-list { display: none !important; }
}

/* Hide table header on mobile */
@media (max-width: 576px) {
  .table-responsive-mobile thead {
    display: none !important;
  }
}

/* Mobile-friendly review cards */
.review-row {
  background: #fff;
  border-radius: 10px;
  box-shadow: 0 2px 8px rgba(0,0,0,0.04);
  margin-bottom: 1.2rem;
  padding: 1rem 0.7rem;
  border: 1px solid #eee;
  display: block;
}
.review-row .review-label {
  font-weight: 600;
  color: #888;
  font-size: 0.97rem;
  margin-bottom: 2px;
  display: block;
}
.review-row .review-value {
  font-size: 1.05rem;
  margin-bottom: 8px;
  display: block;
  word-break: break-word;
}
.review-row .review-action {
  margin-top: 10px;
}
@media (min-width: 768px) {
  .responsive-table-list {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: 0.5rem;
  }
  .review-row {
    border-radius: 0;
    box-shadow: none;
    border-bottom: 1px solid #eee;
    padding: 0.7rem 0.5rem;
    margin-bottom: 0;
    display: contents;
  }
  .review-label {
    display: none;
  }
  .review-value, .review-action {
    display: block;
    padding: 0.7rem 0.5rem;
    vertical-align: middle;
    font-size: 1rem;
    border-bottom: none;
  }
}

/* Service Card Styling */
.service-card-list .service-card {
  background: #fff;
  border-radius: 10px;
  box-shadow: 0 2px 8px rgba(0,0,0,0.04);
  margin-bottom: 1.2rem;
  padding: 1rem 0.7rem;
  border: 1px solid #eee;
  display: block;
}
.service-card .service-label {
  font-weight: 600;
  color: #888;
  font-size: 0.97rem;
  margin-bottom: 2px;
  display: block;
}
.service-card .service-value {
  font-size: 1.05rem;
  margin-bottom: 8px;
  display: block;
  word-break: break-word;
}
.service-card .service-action {
  margin-top: 10px;
}
@media (min-width: 768px) {
  .service-card-list {
    display: none !important;
  }
  .table-responsive {
    display: block !important;
  }
}
@media (max-width: 767px) {
  .service-card-list {
    display: block !important;
  }
  .table-responsive {
    display: none !important;
  }
}

/* Pending Order Card Styling */
.pending-order-card-list {
  padding: 0;
}
@media (max-width: 767px) {
  .table-responsive { display: none !important; }
  .pending-order-card-list { display: block !important; }
}
@media (min-width: 768px) {
  .table-responsive { display: block !important; }
  .pending-order-card-list { display: none !important; }
}
.pending-order-card {
  background: #fff;
  border-radius: 12px;
  box-shadow: 0 2px 12px rgba(0,0,0,0.07);
  margin-bottom: 1.2rem;
  padding: 1.2rem 1rem;
  border: 1px solid #e3e3e3;
  transition: box-shadow 0.2s;
}
.pending-order-card:hover {
  box-shadow: 0 4px 18px rgba(0,0,0,0.12);
}
.pending-order-card .card-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 8px;
}
.pending-order-card .card-label {
  font-weight: 600;
  color: #0d6efd;
  font-size: 0.97rem;
  flex: 0 0 40%;
}
.pending-order-card .card-value {
  font-size: 1.05rem;
  color: #222;
  flex: 1 1 60%;
  text-align: right;
  word-break: break-word;
}
.pending-order-card .card-actions {
  margin-top: 12px;
  text-align: right;
}

