/* ==========================================================================
   Alliance Auth Buyback Program
   Theme inspired by aa-Indy_Hub
   ========================================================================== */

/* --------------------------------------------------------------------------
   Variables
   -------------------------------------------------------------------------- */
:root {
  --bbp-bg:            #f0f2f5;
  --bbp-white:         #ffffff;
  --bbp-card-shadow:   0 1px 4px rgba(0, 0, 0, 0.08);
  --bbp-card-shadow-hover: 0 3px 12px rgba(0, 0, 0, 0.13);
  --bbp-radius:        0.5rem;
  --bbp-radius-sm:     0.3rem;
  --bbp-border:        rgba(0, 0, 0, 0.07);
  --bbp-accent:        #0d6efd;
  --bbp-accent-hover:  #0b5ed7;
  --bbp-success:       #20c997;
  --bbp-warning:       #fd7e14;
  --bbp-danger:        #e84c4c;
  --bbp-text:          #1a1d23;
  --bbp-text-muted:    #6c757d;
  --bbp-text-light:    #adb5bd;
  --bbp-hero-from:     #1e2d40;
  --bbp-hero-to:       #2c3e55;
  --bbp-transition:    all 0.15s ease;
}

/* --------------------------------------------------------------------------
   Page wrapper
   -------------------------------------------------------------------------- */
.allianceauth-buyback-program-plugin {
  margin: 16px;
}

/* --------------------------------------------------------------------------
   Hero / Banner card  (first card on index, reverse index etc.)
   -------------------------------------------------------------------------- */
.allianceauth-buyback-program-plugin .bbp-hero {
  background: linear-gradient(135deg, var(--bbp-hero-from) 0%, var(--bbp-hero-to) 100%);
  border: none;
  border-radius: var(--bbp-radius);
  box-shadow: var(--bbp-card-shadow);
  color: #fff;
  margin-bottom: 1.5rem;
  overflow: hidden;
  padding: 1.75rem 2rem;
  position: relative;
}

.allianceauth-buyback-program-plugin .bbp-hero::after {
  content: "\f07a";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  font-size: 9rem;
  color: rgba(255, 255, 255, 0.06);
  position: absolute;
  right: 2rem;
  top: 50%;
  transform: translateY(-50%);
  pointer-events: none;
  line-height: 1;
}

.allianceauth-buyback-program-plugin .bbp-hero h1,
.allianceauth-buyback-program-plugin .bbp-hero h2,
.allianceauth-buyback-program-plugin .bbp-hero h3 {
  color: #fff;
  font-weight: 700;
  margin: 0 0 0.3rem;
}

.allianceauth-buyback-program-plugin .bbp-hero p {
  color: rgba(255, 255, 255, 0.72);
  font-size: 0.9rem;
  margin: 0;
}

/* --------------------------------------------------------------------------
   Cards — flat white, subtle shadow, no colored headers
   -------------------------------------------------------------------------- */
.allianceauth-buyback-program-plugin .card {
  background: var(--bbp-white);
  border: 1px solid var(--bbp-border);
  border-radius: var(--bbp-radius);
  box-shadow: var(--bbp-card-shadow);
  margin-bottom: 1.25rem;
  overflow: hidden;
  transition: var(--bbp-transition);
}

.allianceauth-buyback-program-plugin .card:hover {
  box-shadow: var(--bbp-card-shadow-hover);
}

.allianceauth-buyback-program-plugin .card-header {
  background: var(--bbp-white);
  border-bottom: 1px solid var(--bbp-border);
  color: var(--bbp-text);
  font-size: 0.95rem;
  font-weight: 700;
  letter-spacing: 0.01em;
  padding: 0.85rem 1.25rem;
}

.allianceauth-buyback-program-plugin .card-header h5,
.allianceauth-buyback-program-plugin .card-header h4 {
  color: var(--bbp-text);
  font-size: 0.95rem;
  font-weight: 700;
  margin: 0;
}

.allianceauth-buyback-program-plugin .card-body {
  padding: 1.15rem 1.25rem;
}

.allianceauth-buyback-program-plugin .card-footer {
  background: var(--bbp-bg);
  border-top: 1px solid var(--bbp-border);
  color: var(--bbp-text-muted);
  font-size: 0.83rem;
  padding: 0.6rem 1.25rem;
}

/* Success / info / warning cards (calculation banners) */
.allianceauth-buyback-program-plugin .card.text-white.bg-success {
  background: linear-gradient(135deg, #1aab72 0%, #159a64 100%) !important;
  border: none;
  box-shadow: 0 2px 10px rgba(26, 171, 114, 0.3);
}

.allianceauth-buyback-program-plugin .card.bg-info {
  background: linear-gradient(135deg, #17a2b8 0%, #138496 100%) !important;
  border: none;
}

/* --------------------------------------------------------------------------
   Row / item cards  (program list rows)
   -------------------------------------------------------------------------- */
.allianceauth-buyback-program-plugin .table tbody tr {
  border-bottom: 1px solid var(--bbp-border);
  transition: background-color 0.1s ease;
}

.allianceauth-buyback-program-plugin .table tbody tr:last-child {
  border-bottom: none;
}

.allianceauth-buyback-program-plugin .table tbody tr:hover {
  background-color: rgba(13, 110, 253, 0.03);
}

/* --------------------------------------------------------------------------
   Tables
   -------------------------------------------------------------------------- */
.allianceauth-buyback-program-plugin .table {
  font-size: 0.88rem;
  margin-bottom: 0;
}

.allianceauth-buyback-program-plugin .table thead th {
  background: var(--bbp-bg);
  border-bottom: 1px solid rgba(0, 0, 0, 0.1);
  color: var(--bbp-text-muted);
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  padding: 0.65rem 0.9rem;
  text-transform: uppercase;
  white-space: nowrap;
}

.allianceauth-buyback-program-plugin .table tbody td {
  padding: 0.72rem 0.9rem;
  vertical-align: middle;
  color: var(--bbp-text);
}

.allianceauth-buyback-program-plugin .table tfoot td,
.allianceauth-buyback-program-plugin .table tfoot th {
  background: var(--bbp-bg);
  border-top: 1px solid rgba(0, 0, 0, 0.1);
  font-weight: 700;
  padding: 0.65rem 0.9rem;
}

.allianceauth-buyback-program-plugin .table-striped > tbody > tr:nth-of-type(odd) > * {
  background-color: rgba(0, 0, 0, 0.015);
}

/* --------------------------------------------------------------------------
   Badges  — pill style like Indy Hub counters
   -------------------------------------------------------------------------- */
.allianceauth-buyback-program-plugin .badge {
  border-radius: 2rem;
  font-size: 0.72rem;
  font-weight: 600;
  letter-spacing: 0.03em;
  padding: 0.28em 0.7em;
}

.allianceauth-buyback-program-plugin .badge.bg-secondary {
  background: #e9ecef !important;
  color: #495057 !important;
}

.allianceauth-buyback-program-plugin .badge.bg-success {
  background: #d1f5e9 !important;
  color: #0d7a52 !important;
}

.allianceauth-buyback-program-plugin .badge.bg-warning {
  background: #fff3cd !important;
  color: #9a5a00 !important;
}

.allianceauth-buyback-program-plugin .badge.bg-danger {
  background: #fce8e8 !important;
  color: #c0392b !important;
}

.allianceauth-buyback-program-plugin .badge.bg-info {
  background: #d1ecf1 !important;
  color: #0c5460 !important;
}

.allianceauth-buyback-program-plugin .badge.bg-primary {
  background: #cfe2ff !important;
  color: #084298 !important;
}

/* --------------------------------------------------------------------------
   Buttons — clean, minimal, like Indy Hub's "Open" / "View Craft"
   -------------------------------------------------------------------------- */
.allianceauth-buyback-program-plugin .btn {
  border-radius: var(--bbp-radius-sm);
  font-size: 0.82rem;
  font-weight: 500;
  letter-spacing: 0.01em;
  padding: 0.3rem 0.75rem;
  transition: var(--bbp-transition);
}

.allianceauth-buyback-program-plugin .btn-sm {
  font-size: 0.77rem;
  padding: 0.22rem 0.6rem;
}

.allianceauth-buyback-program-plugin .btn-success {
  background-color: #20c997;
  border-color: #20c997;
  color: #fff;
}
.allianceauth-buyback-program-plugin .btn-success:hover {
  background-color: #1baa80;
  border-color: #1baa80;
  color: #fff;
}

.allianceauth-buyback-program-plugin .btn-danger {
  background-color: var(--bbp-danger);
  border-color: var(--bbp-danger);
  color: #fff;
}
.allianceauth-buyback-program-plugin .btn-danger:hover {
  background-color: #c0392b;
  border-color: #c0392b;
  color: #fff;
}

.allianceauth-buyback-program-plugin .btn-warning {
  background-color: var(--bbp-warning);
  border-color: var(--bbp-warning);
  color: #fff;
}
.allianceauth-buyback-program-plugin .btn-warning:hover {
  background-color: #e06b0d;
  border-color: #e06b0d;
  color: #fff;
}

.allianceauth-buyback-program-plugin .btn-primary {
  background-color: var(--bbp-accent);
  border-color: var(--bbp-accent);
  color: #fff;
}
.allianceauth-buyback-program-plugin .btn-primary:hover {
  background-color: var(--bbp-accent-hover);
  border-color: var(--bbp-accent-hover);
  color: #fff;
}

.allianceauth-buyback-program-plugin .btn-info {
  background-color: #17a2b8;
  border-color: #17a2b8;
  color: #fff;
}
.allianceauth-buyback-program-plugin .btn-info:hover {
  background-color: #138496;
  border-color: #138496;
  color: #fff;
}

.allianceauth-buyback-program-plugin .btn-secondary {
  background-color: #e9ecef;
  border-color: #dee2e6;
  color: #495057;
}
.allianceauth-buyback-program-plugin .btn-secondary:hover {
  background-color: #dee2e6;
  border-color: #ced4da;
  color: #343a40;
}

/* --------------------------------------------------------------------------
   Alerts
   -------------------------------------------------------------------------- */
.allianceauth-buyback-program-plugin .alert {
  border: none;
  border-left: 4px solid;
  border-radius: var(--bbp-radius-sm);
  font-size: 0.87rem;
  padding: 0.75rem 1rem;
}

.allianceauth-buyback-program-plugin .alert-info {
  background: #f0fafe;
  border-left-color: #17a2b8;
  color: #0c5460;
}

.allianceauth-buyback-program-plugin .alert-success {
  background: #f0fdf6;
  border-left-color: #20c997;
  color: #0d5c38;
}

.allianceauth-buyback-program-plugin .alert-warning {
  background: #fffbf0;
  border-left-color: #ffc107;
  color: #7a5000;
}

.allianceauth-buyback-program-plugin .alert-danger {
  background: #fef6f6;
  border-left-color: var(--bbp-danger);
  color: #7a1c1c;
}

.allianceauth-buyback-program-plugin .alert-secondary {
  background: #f8f9fa;
  border-left-color: #adb5bd;
  color: #495057;
}

/* --------------------------------------------------------------------------
   Section headings (like "Watch your operations", "Corporation")
   -------------------------------------------------------------------------- */
.allianceauth-buyback-program-plugin .bbp-section-title {
  color: var(--bbp-text);
  font-size: 1.1rem;
  font-weight: 700;
  margin-bottom: 0.15rem;
}

.allianceauth-buyback-program-plugin .bbp-section-subtitle {
  color: var(--bbp-text-muted);
  font-size: 0.82rem;
  margin-bottom: 1rem;
}

/* --------------------------------------------------------------------------
   Form controls
   -------------------------------------------------------------------------- */
.allianceauth-buyback-program-plugin .form-control,
.allianceauth-buyback-program-plugin .form-select {
  border: 1px solid #dee2e6;
  border-radius: var(--bbp-radius-sm);
  font-size: 0.88rem;
  transition: var(--bbp-transition);
}

.allianceauth-buyback-program-plugin .form-control:focus,
.allianceauth-buyback-program-plugin .form-select:focus {
  border-color: var(--bbp-accent);
  box-shadow: 0 0 0 0.2rem rgba(13, 110, 253, 0.12);
}

.allianceauth-buyback-program-plugin label {
  color: var(--bbp-text);
  font-size: 0.84rem;
  font-weight: 600;
  margin-bottom: 0.3rem;
}

/* --------------------------------------------------------------------------
   Modals
   -------------------------------------------------------------------------- */
.allianceauth-buyback-program-plugin .modal-content {
  border: none;
  border-radius: var(--bbp-radius);
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.16);
}

.allianceauth-buyback-program-plugin .modal-header {
  background: var(--bbp-white);
  border-bottom: 1px solid var(--bbp-border);
  border-radius: var(--bbp-radius) var(--bbp-radius) 0 0;
  font-weight: 700;
}

/* --------------------------------------------------------------------------
   List groups
   -------------------------------------------------------------------------- */
.allianceauth-buyback-program-plugin .list-group-item {
  border-color: var(--bbp-border);
  color: var(--bbp-text);
  font-size: 0.87rem;
  padding: 0.6rem 1rem;
  transition: background-color 0.1s ease;
}

.allianceauth-buyback-program-plugin .list-group-item:hover {
  background-color: rgba(13, 110, 253, 0.04);
}

/* --------------------------------------------------------------------------
   Settings icon row
   -------------------------------------------------------------------------- */
.allianceauth-buyback-program-plugin .fas[title] {
  cursor: help;
  font-size: 0.9rem;
  margin-right: 3px;
  opacity: 0.85;
  transition: opacity 0.12s ease, transform 0.12s ease;
}

.allianceauth-buyback-program-plugin .fas[title]:hover {
  opacity: 1;
  transform: scale(1.2);
}

/* --------------------------------------------------------------------------
   Item icon
   -------------------------------------------------------------------------- */
.allianceauth-buyback-program-plugin .item-icon {
  border-radius: 4px;
  height: 28px !important;
  padding-right: 6px;
}

/* --------------------------------------------------------------------------
   Tracking number
   -------------------------------------------------------------------------- */
.allianceauth-buyback-program-plugin [style*="font-family: monospace"],
.allianceauth-buyback-program-plugin span[style*="monospace"],
.allianceauth-buyback-program-plugin code {
  background: #f0f2f5;
  border-radius: var(--bbp-radius-sm);
  color: var(--bbp-text);
  font-size: 0.85rem;
  padding: 0.12em 0.45em;
}

/* --------------------------------------------------------------------------
   No-border utility
   -------------------------------------------------------------------------- */
.allianceauth-buyback-program-plugin .no-border {
  border: 0;
}

.allianceauth-buyback-program-plugin tr.no-border td {
  border: 0;
}

/* --------------------------------------------------------------------------
   DataTables
   -------------------------------------------------------------------------- */
table.dataTable {
  width: 100%;
  margin: 0 auto;
  clear: both;
  border-collapse: separate;
  border-spacing: 0;
}

table.dataTable thead th,
table.dataTable tfoot th {
  font-weight: 700;
}

table.dataTable thead th,
table.dataTable thead td {
  border-bottom: 1px solid rgba(0, 0, 0, 0.1);
  padding: 10px 12px;
}

table.dataTable tfoot th,
table.dataTable tfoot td {
  border-top: 1px solid rgba(0, 0, 0, 0.1);
  padding: 10px 12px 6px;
}

table.dataTable tbody tr {
  background-color: transparent;
  transition: background-color 0.1s ease;
}

table.dataTable tbody tr:hover > * {
  background-color: rgba(13, 110, 253, 0.03);
}

table.dataTable tbody tr.selected > * {
  box-shadow: inset 0 0 0 9999px #0d6efd;
  color: white;
}

table.dataTable tbody td {
  padding: 8px 12px;
}

table.dataTable.row-border tbody th,
table.dataTable.row-border tbody td,
table.dataTable.display tbody th,
table.dataTable.display tbody td {
  border-top: 1px solid rgba(0, 0, 0, 0.06);
}

table.dataTable.stripe > tbody > tr.odd > * {
  box-shadow: inset 0 0 0 9999px rgba(0, 0, 0, 0.015);
}

table.dataTable.no-footer {
  border-bottom: 1px solid rgba(0, 0, 0, 0.08);
}

/* Sorting */
table.dataTable thead > tr > th.sorting,
table.dataTable thead > tr > th.sorting_asc,
table.dataTable thead > tr > th.sorting_desc,
table.dataTable thead > tr > td.sorting,
table.dataTable thead > tr > td.sorting_asc,
table.dataTable thead > tr > td.sorting_desc {
  cursor: pointer;
  position: relative;
  padding-right: 26px;
}

table.dataTable thead > tr > th.sorting:before,
table.dataTable thead > tr > th.sorting:after,
table.dataTable thead > tr > td.sorting:before,
table.dataTable thead > tr > td.sorting:after {
  font-size: 0.72em;
  opacity: 0.25;
  position: absolute;
  right: 10px;
}

table.dataTable thead > tr > th.sorting:before,
table.dataTable thead > tr > td.sorting:before {
  bottom: 50%;
  content: "▲";
}

table.dataTable thead > tr > th.sorting:after,
table.dataTable thead > tr > td.sorting:after {
  content: "▼";
  top: 50%;
}

table.dataTable thead > tr > th.sorting_asc:before,
table.dataTable thead > tr > td.sorting_asc:before,
table.dataTable thead > tr > th.sorting_desc:after,
table.dataTable thead > tr > td.sorting_desc:after {
  opacity: 0.75;
}

/* DataTables controls */
.dataTables_wrapper {
  position: relative;
  clear: both;
}

.dataTables_wrapper .dataTables_length { float: left; }

.dataTables_wrapper .dataTables_length select {
  border: 1px solid #dee2e6;
  border-radius: var(--bbp-radius-sm);
  background: #fff;
  font-size: 0.84rem;
  padding: 3px 8px;
}

.dataTables_wrapper .dataTables_filter {
  float: right;
  text-align: right;
}

.dataTables_wrapper .dataTables_filter input {
  border: 1px solid #dee2e6;
  border-radius: var(--bbp-radius-sm);
  background: #fff;
  font-size: 0.84rem;
  margin-left: 6px;
  padding: 4px 10px;
  transition: var(--bbp-transition);
}

.dataTables_wrapper .dataTables_filter input:focus {
  border-color: var(--bbp-accent);
  box-shadow: 0 0 0 0.15rem rgba(13, 110, 253, 0.12);
  outline: none;
}

.dataTables_wrapper .dataTables_info {
  clear: both;
  color: var(--bbp-text-muted);
  float: left;
  font-size: 0.83rem;
  padding-top: 0.75em;
}

.dataTables_wrapper .dataTables_paginate {
  float: right;
  padding-top: 0.3em;
  text-align: right;
}

.dataTables_wrapper .dataTables_paginate .paginate_button {
  border: 1px solid transparent;
  border-radius: var(--bbp-radius-sm);
  box-sizing: border-box;
  color: #495057 !important;
  cursor: pointer;
  display: inline-block;
  font-size: 0.83rem;
  margin-left: 2px;
  min-width: 1.8em;
  padding: 0.3em 0.65em;
  text-align: center;
  text-decoration: none !important;
  transition: var(--bbp-transition);
}

.dataTables_wrapper .dataTables_paginate .paginate_button.current,
.dataTables_wrapper .dataTables_paginate .paginate_button.current:hover {
  background: var(--bbp-accent);
  border-color: var(--bbp-accent);
  color: #fff !important;
}

.dataTables_wrapper .dataTables_paginate .paginate_button.disabled,
.dataTables_wrapper .dataTables_paginate .paginate_button.disabled:hover {
  background: transparent;
  border-color: transparent;
  color: var(--bbp-text-light) !important;
  cursor: default;
}

.dataTables_wrapper .dataTables_paginate .paginate_button:hover {
  background: var(--bbp-bg);
  border-color: #dee2e6;
  color: var(--bbp-text) !important;
}

.dataTables_wrapper .dataTables_length,
.dataTables_wrapper .dataTables_filter,
.dataTables_wrapper .dataTables_info,
.dataTables_wrapper .dataTables_paginate {
  color: #495057;
}

/* DataTables processing */
div.dataTables_processing {
  left: 50%;
  margin-left: -100px;
  margin-top: -26px;
  padding: 2px;
  position: absolute;
  text-align: center;
  top: 50%;
  width: 200px;
}

div.dataTables_processing > div:last-child > div {
  animation-timing-function: cubic-bezier(0, 1, 1, 0);
  background: var(--bbp-accent);
  border-radius: 50%;
  height: 13px;
  position: absolute;
  top: 0;
  width: 13px;
}

@keyframes datatables-loader-1 { 0% { transform: scale(0); } 100% { transform: scale(1); } }
@keyframes datatables-loader-3 { 0% { transform: scale(1); } 100% { transform: scale(0); } }
@keyframes datatables-loader-2 { 0% { transform: translate(0, 0); } 100% { transform: translate(24px, 0); } }

div.dataTables_processing > div:last-child > div:nth-child(1) { left: 8px;  animation: datatables-loader-1 0.6s infinite; }
div.dataTables_processing > div:last-child > div:nth-child(2) { left: 8px;  animation: datatables-loader-2 0.6s infinite; }
div.dataTables_processing > div:last-child > div:nth-child(3) { left: 32px; animation: datatables-loader-2 0.6s infinite; }
div.dataTables_processing > div:last-child > div:nth-child(4) { left: 56px; animation: datatables-loader-3 0.6s infinite; }

table.dataTable th, table.dataTable td { box-sizing: content-box; }

/* --------------------------------------------------------------------------
   Responsive
   -------------------------------------------------------------------------- */
@media screen and (max-width: 768px) {
  .allianceauth-buyback-program-plugin { margin: 8px; }
  .allianceauth-buyback-program-plugin .card-header { padding: 0.7rem 1rem; }
  .allianceauth-buyback-program-plugin .card-body  { padding: 0.85rem 1rem; }
  .allianceauth-buyback-program-plugin .table { font-size: 0.82rem; }

  .dataTables_wrapper .dataTables_info,
  .dataTables_wrapper .dataTables_paginate { float: none; text-align: center; }
  .dataTables_wrapper .dataTables_paginate { margin-top: 0.5em; }
}

@media screen and (max-width: 640px) {
  .dataTables_wrapper .dataTables_length,
  .dataTables_wrapper .dataTables_filter { float: none; text-align: center; }
  .dataTables_wrapper .dataTables_filter { margin-top: 0.5em; }
}


/* --------------------------------------------------------------------------
   Navbar menus
   The Buyback menus render in Alliance Auth's top navbar, which sits OUTSIDE
   the .allianceauth-buyback-program-plugin content wrapper, so they need
   their own themed classes to stay consistent with the rest of the UI.
   Solid "chip" buttons read well on both light and dark AA navbar themes.
   -------------------------------------------------------------------------- */
.bbp-nav-link {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

.bbp-nav-btn {
  align-items: center;
  border: 1px solid transparent;
  border-radius: var(--bbp-radius-sm, 0.3rem);
  display: inline-flex;
  font-size: 0.82rem;
  font-weight: 500;
  gap: 0.35rem;
  letter-spacing: 0.01em;
  line-height: 1.45;
  margin: 0.15rem 0.1rem;
  padding: 0.34rem 0.85rem;
  transition: all 0.15s ease;
  white-space: nowrap;
}

.bbp-nav-btn i {
  font-size: 0.82em;
  opacity: 0.9;
}

/* Standard navigation entries */
.bbp-nav-btn-nav {
  background-color: #e9ecef;
  border-color: #dee2e6;
  color: #495057;
}
.bbp-nav-btn-nav:hover,
.bbp-nav-btn-nav:focus {
  background-color: #dee2e6;
  border-color: #ced4da;
  color: #212529;
}

/* Primary action (My Settings) */
.bbp-nav-btn-primary {
  background-color: #20c997;
  border-color: #20c997;
  color: #fff;
}
.bbp-nav-btn-primary:hover,
.bbp-nav-btn-primary:focus {
  background-color: #1baa80;
  border-color: #1baa80;
  color: #fff;
}

/* Management actions */
.bbp-nav-btn-manage {
  background-color: #0d6efd;
  border-color: #0d6efd;
  color: #fff;
}
.bbp-nav-btn-manage:hover,
.bbp-nav-btn-manage:focus {
  background-color: #0b5ed7;
  border-color: #0b5ed7;
  color: #fff;
}


/* --------------------------------------------------------------------------
   Navbar menus — responsive
   On narrower viewports Alliance Auth keeps the Buyback menu buttons
   expanded (instead of collapsing into the hamburger), and the left/right
   nav groups only get part of the bar width — so the buttons wrap onto
   several rows and the navbar can grow over the page content. Compact the
   chips so they pack into far fewer rows.
   -------------------------------------------------------------------------- */
@media screen and (max-width: 1399px) {
  .bbp-nav-btn {
    font-size: 0.78rem;
    margin: 0.1rem 0.07rem;
    padding: 0.28rem 0.58rem;
  }
}

@media screen and (max-width: 1199px) {
  .bbp-nav-btn {
    font-size: 0.75rem;
    gap: 0.3rem;
    padding: 0.26rem 0.5rem;
  }
}

@media screen and (max-width: 991px) {
  .bbp-nav-btn {
    font-size: 0.72rem;
    gap: 0.25rem;
    padding: 0.22rem 0.45rem;
  }
  .bbp-nav-btn i {
    font-size: 0.78em;
  }
}


/* --------------------------------------------------------------------------
   Navbar management dropdown
   -------------------------------------------------------------------------- */
.bbp-nav-link.dropdown-toggle::after {
  display: none; /* the chip already shows its own caret */
}

.bbp-nav-dropdown {
  border: 1px solid var(--bbp-border, rgba(0, 0, 0, 0.07));
  border-radius: var(--bbp-radius-sm, 0.3rem);
  box-shadow: 0 6px 20px rgba(0, 0, 0, 0.15);
  font-size: 0.85rem;
  margin-top: 0.35rem;
  padding: 0.3rem;
}

.bbp-nav-dropdown .dropdown-item {
  border-radius: var(--bbp-radius-sm, 0.3rem);
  color: #495057;
  font-weight: 500;
  padding: 0.45rem 0.7rem;
}

.bbp-nav-dropdown .dropdown-item:hover,
.bbp-nav-dropdown .dropdown-item:focus {
  background-color: rgba(13, 110, 253, 0.08);
  color: #0d6efd;
}
