/* ===== Grease Ducks brand overrides ===== */
:root{
  --brand-green: #006633;      /* main */
  --brand-green-600: #005129;  /* hover/active */
  --brand-green-700: #003d1e;  /* darkest */
  --brand-accent: #ff8a00;     /* orange highlight from logo */
  --brand-ring: 0 0 0 .25rem rgba(0,102,51,.25);
}

/* Primary color family → dark green */
a, .link-primary, .text-primary { color: var(--brand-green) !important; }
a:hover { color: var(--brand-green-600) !important; }

/* Solid buttons */
.btn-primary, .btn-success {
  background-color: var(--brand-green) !important;
  border-color: var(--brand-green) !important;
  color:#fff !important;
}
.btn-primary:hover, .btn-success:hover,
.btn-primary:focus, .btn-success:focus,
.btn-primary:active, .btn-success:active,
.btn-primary.show, .btn-success.show {
  background-color: var(--brand-green-600) !important;
  border-color: var(--brand-green-600) !important;
  box-shadow: var(--brand-ring) !important;
}

/* Outline buttons */
.btn-outline-primary, .btn-outline-success {
  color: var(--brand-green) !important;
  border-color: var(--brand-green) !important;
}
.btn-outline-primary:hover, .btn-outline-success:hover {
  background-color: var(--brand-green) !important;
  border-color: var(--brand-green) !important;
  color:#fff !important;
}

/* “Soft” variants used by the theme */
.btn-soft-primary, .bg-primary-subtle, .badge.bg-primary-subtle {
  background: rgba(0,102,51,.12) !important;
  color: var(--brand-green) !important;
  border-color: transparent !important;
}
.btn-soft-primary:hover { background: rgba(0,102,51,.18) !important; }

/* Success-subtle (we use this for “Active” badges) */
.badge.bg-success-subtle, .bg-success-subtle {
  background: rgba(0,102,51,.10) !important;
  color: var(--brand-green) !important;
}

/* Forms: focus ring & switches */
.form-control:focus, .form-select:focus {
  border-color: var(--brand-green) !important;
  box-shadow: var(--brand-ring) !important;
}
.form-check-input:checked {
  background-color: var(--brand-green) !important;
  border-color: var(--brand-green) !important;
}

/* Small accent uses (icons, tiny pills, links on hover) */
.badge.bg-warning-subtle, .text-warning { color: var(--brand-accent) !important; }
a:hover .icon-accent { color: var(--brand-accent) !important; }

/* Auth screens background (login / lock) */
.auth-bg{
  background:
    radial-gradient(1000px 700px at 85% -10%, rgba(0,0,0,.15), transparent 60%),
    linear-gradient(135deg, #012b14 0%, #00471f 35%, #006633 60%, #003d1e 100%);
}

/* Optional: loader/progress accent already set via initProgress; keep brand alignment */
.progress-bar, .spinner-border { color: var(--brand-green) !important; background-color: var(--brand-green) !important; }

/* Tables: keep headers neutral but use accent for current sort/highlights if you add them */
.table thead th a:hover { color: var(--brand-accent) !important; }

/* Kill the theme's purple overlay on auth pages */
.auth-bg::before { content: none !important; }

/* Optional: make primary-highlight text/links orange */
.link-primary, .text-primary { color: var(--brand-accent) !important; }
.link-primary:hover, a:hover { color: #cc6b00 !important; }

/* --- Auth background: force green, nuke any purple overlays --- */
.auth-bg,
.auth-bg::before,
.auth-bg::after,
.auth-bg .bg-overlay,
.auth-bg .bg-overlay-400,
.auth-bg .bg-overlay-600 {
  background:
    radial-gradient(1000px 700px at 85% -10%, rgba(0,0,0,.15), transparent 60%),
    linear-gradient(135deg, #012b14 0%, #00471f 35%, #006633 60%, #003d1e 100%) !important;
  opacity: 1 !important;         /* defeat tinted overlays */
}

/* If the theme injects an overlay element, hide it entirely */
.auth-bg .bg-overlay,
.auth-bg .bg-overlay-400,
.auth-bg .bg-overlay-600,
.auth-bg::before,
.auth-bg::after {
  content: none !important;
  display: none !important;
}

/* Make any “primary” highlights orange on auth screens */
.auth-bg .text-primary,
.auth-bg a.text-primary { color: var(--brand-accent) !important; }

/* Keep muted text neutral gray (not purple) */
.auth-bg .text-muted { color: #6c757d !important; }

/* === Orange highlights (kill theme purple) === */

/* Make framework link colors orange */
:root{
  --bs-link-color: #ff8a00;
  --bs-link-hover-color: #cc6b00;
}

/* Any place the theme uses "primary" as text/link color */
a, a:not(.btn),
.link-primary, a.link-primary,
.text-primary, .text-primary-emphasis,
a.text-primary, .btn-link,
.auth-bg .text-primary, .auth-bg a {
  color: var(--bs-link-color) !important;
}
a:hover, a:not(.btn):hover,
.link-primary:hover, a.link-primary:hover,
.text-primary:hover, a.text-primary:hover,
.auth-bg a:hover, .btn-link:hover {
  color: var(--bs-link-hover-color) !important;
}

/* Keep components that *use* primary (buttons/badges/subtle backgrounds) green */
:root{
  --bs-primary: #006633;
  --bs-primary-rgb: 0,102,51;
  --bs-primary-text-emphasis: #0b6a2b;
  --bs-primary-bg-subtle: rgba(0,102,51,.12);
  --bs-primary-border-subtle: rgba(0,102,51,.30);
}

/* === Force orange links everywhere (kills purple visited) === */
:root{
  /* framework + theme */
  --bs-link-color: #ff8a00;
  --bs-link-hover-color: #cc6b00;
  --ct-link-color: #ff8a00;        /* some themes use ct-* */
  --ct-link-hover-color: #cc6b00;
}

/* All anchor states */
a,
a:visited,
a:active,
a:focus,
a:not(.btn),
.link-primary,
.link-primary:visited,
.text-primary,
.text-primary-emphasis,
.btn-link {
  color: #ff8a00 !important;
}
a:hover,
.link-primary:hover,
.btn-link:hover {
  color: #cc6b00 !important;
}

/* Login/lock cards—raise specificity just in case */
.auth-bg .card a,
.auth-bg .card a:visited,
.auth-bg .card .link-primary,
.auth-bg .card .text-primary {
  color: #ff8a00 !important;
}
.auth-bg .card a:hover { color: #cc6b00 !important; }

/* Dotted/dashed underline links the theme uses (e.g., "Forgot Password?") */
.border-bottom.border-dashed,
a.border-bottom.border-dashed,
.auth-bg .card a.border-bottom.border-dashed {
  border-bottom-color: rgba(255,138,0,.55) !important;
}

/* Auth card titles: make them orange (not theme purple) */
.auth-bg .card h1,
.auth-bg .card h2,
.auth-bg .card h3,
.auth-bg .card h4,
.auth-bg .card h5,
.auth-bg .card h6,
.auth-bg .card .auth-title,
.auth-bg .card .card-title {
  color: var(--brand-accent) !important; /* #ff8a00 */
}

/* (Optional) If you’d rather make the big title green instead: */
/*
.auth-bg .card h1,
.auth-bg .card h2,
.auth-bg .card h3,
.auth-bg .card h4,
.auth-bg .card h5,
.auth-bg .card h6 {
  color: var(--brand-green) !important;
}
*/

/* === Sidebar logo sizing (vertical nav) === */
.sidenav-menu .logo {
  /* give the logo block a bit more vertical space */
  min-height: 84px !important;
  padding: 18px 16px !important;
  display: flex !important;
  align-items: center !important;
}

.sidenav-menu .logo .logo-lg img {
  /* stop the theme from forcing 20px height */
  height: auto !important;
  max-height: 64px;            /* optional guard; tweak if you like */
  width: 120px !important;     /* match the <img width> above */
}

/* keep the tiny 'sm' version for collapsed mode only */
.sidenav-menu:not(.collapsed) .logo .logo-sm {
  display: none !important;
}

/* If your layout ever collapses the sidenav, use a compact size there */
.sidenav-menu.collapsed .logo .logo-lg img {
  width: 42px !important;
  max-height: 42px !important;
}

/* Title */
.sidenav-menu .menu-title { color: var(--brand-green) !important; }

/* Links & icons */
.sidenav-menu .menuitem > a,
.sidenav-menu .menuitem > a .menu-icon,
.sidenav-menu .side-nav-link,
.sidenav-menu .side-nav-link .menu-icon {
  color: var(--brand-green) !important;
}

/* Hover */
.sidenav-menu .menuitem > a:hover,
.sidenav-menu .side-nav-link:hover {
  color: var(--brand-green-600) !important;
  background: rgba(0, 102, 51, .08) !important; /* light green hover */
}

/* Active/current */
.sidenav-menu .menuitem.menuitem-active > a,
.sidenav-menu .menuitem.mm-active > a,
.sidenav-menu .menuitem > a.active,
.sidenav-menu .side-nav-link.active {
  color: var(--brand-green-700) !important;
  background: rgba(0, 102, 51, .18) !important; /* light green highlight */
  border-left: 3px solid var(--brand-green) !important;
}

/* Tables in app area: make links green (not orange) */
.content-page .table a,
.page-content .table a {
  color: var(--brand-green) !important;
  text-decoration: none;
  font-weight: 400 !important;           /* no bold on account links */
}
.content-page .table a:hover,
.page-content .table a:hover {
  color: var(--brand-green-600) !important;
  text-decoration: underline;
}

/* Flatten badges inside tables (no bubbles) but keep text color */
.table .badge,
.table .badge[class*="bg-"] {
  background: transparent !important;
  border: 0 !important;
  padding: 0 !important;
  line-height: 1.2 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

/* Ensure status colors */
.table .badge.text-success { color: var(--brand-green) !important; }    /* Active */
.table .badge.text-danger  { color: #c62828 !important; }               /* Inactive / Suspended */
.table .badge.text-warning { color: var(--brand-accent) !important; }   /* New (orange) */

/* If “New” was using primary subtle/purple, force it orange */
.table .badge.bg-primary-subtle,
.table .badge.text-primary {
  color: var(--brand-accent) !important;
  background: transparent !important;
}

/* Hide the global topbar search */
.navbar-custom .app-search,
.topbar .app-search,
.header .app-search,
.navbar-custom .search-dropdown {
  display: none !important;
}

/* Orange for page titles or any callouts */
.text-accent { color: var(--brand-accent) !important; }

/* Light-green hover/active highlight for rows & menu (already set for menu; add table hover here if you want) */
.table-hover tbody tr:hover { background: rgba(0,102,51,.06) !important; }

/* brand.css */
.link-green { color: var(--brand-green) !important; }
.link-green:hover { color: var(--brand-green-600) !important; }

/* Inertia / NProgress overrides */
#nprogress .bar { background: #006633 !important; }
#nprogress .peg { box-shadow: 0 0 10px #006633, 0 0 5px #006633 !important; }
#nprogress .spinner-icon {
  border-top-color: #006633 !important;
  border-left-color: #006633 !important;
}

/* ---- Accounts list: status colors (plain text, no bubbles) ---- */
.text-status-active { color: var(--brand-green) !important; }          /* Active = green */
.text-status-danger { color: #dc3545 !important; }                      /* Closed/Suspended/Inactive/Cancelled = red */
.text-status-new    { color: #0d6efd !important; }                      /* New = blue */

/* Toolbar alignment helper for the Accounts header */
.accounts-toolbar {
  min-height: 56px;                 /* same feel as a navbar */
  display: flex;
  align-items: center;              /* <-- vertical centering */
  gap: .75rem;
}
.accounts-toolbar .search-wrap {
  margin-left: auto;
  max-width: 380px;
}
.accounts-toolbar .form-control {   /* keep input visually centered */
  height: 38px;
}

/* make sure status text + account links use normal weight */
.table td .text-status-active,
.table td .text-status-danger,
.table td .text-status-new,
.table td a.text-success {
  font-weight: 400 !important;
}

.header-min { min-height: 38px; }

/* Page headers: title left, search right, vertically centered */
.header-row { display: flex; align-items: center; gap: .5rem; }
.header-row .header-title { margin: 0; }
.header-row .header-search { margin-left: auto; width: min(420px, 100%); }

/* ===== Grease Ducks: widen chat bubbles ===== */

/* Base width for all chat bubbles */
.chat-list .chat-group .chat-message {
  max-width: min(900px, 80%) !important;  /* try 80%; bump to 90% if you like */
}

/* Optional: on smaller screens let them use the full width */
@media (max-width: 991.98px) {
  .chat-list .chat-group .chat-message {
    max-width: 100% !important;
  }
}

