/* ================================================================
   WhatsJet Custom UI — lw-custom.css
   Loaded in <head> to prevent FOUC (Flash of Unstyled Content)
   ================================================================ */

/* ================================================================
   SIDEBAR — Fixed, Scrollable, Clean Light
   ================================================================ */
#sidenav-main { width: 250px !important; position: fixed !important; top: 0 !important; left: 0 !important; bottom: 0 !important; }
@media (min-width: 768px) { .main-content { margin-left: 250px !important; } }
html.lw-sb-init-c #sidenav-main { transform: translateX(-250px) !important; }
html.lw-sb-init-c .main-content  { margin-left: 0 !important; }

#sidenav-main.navbar.lw-sidebar-container {
    position: fixed !important;
    top: 0 !important; left: 0 !important; bottom: 0 !important;
    width: 250px !important;
    z-index: 1050 !important;
    display: flex !important;
    flex-direction: column !important;
    overflow: hidden !important;
    border-right: 1px solid #e8edf2 !important;
    box-shadow: 3px 0 16px rgba(0,0,0,0.07) !important;
    background: #ffffff !important;
    transition: transform 0.28s cubic-bezier(0.4,0,0.2,1) !important;
}
#sidenav-main .container-fluid {
    display: flex !important;
    flex-direction: column !important;
    flex: 1 1 auto !important;
    overflow: hidden !important;
    padding: 0 !important;
    height: 100% !important;
}
.lw-sb-logo-area {
    flex-shrink: 0;
    padding: 1rem 1.25rem;
    border-bottom: 1px solid #f0f4f8;
    display: flex;
    align-items: center;
    min-height: 62px;
}
.lw-sb-logo-area .navbar-brand {
    padding: 0 !important; margin: 0 !important;
    display: flex !important; align-items: center !important;
}
#sidenav-main .navbar-collapse {
    flex: 1 1 auto !important;
    overflow-y: auto !important; overflow-x: hidden !important;
    display: flex !important;
    flex-direction: column !important;
    padding-bottom: 0.5rem !important;
}
#sidenav-main .navbar-collapse::-webkit-scrollbar { width: 3px; }
#sidenav-main .navbar-collapse::-webkit-scrollbar-track { background: transparent; }
#sidenav-main .navbar-collapse::-webkit-scrollbar-thumb { background: #e2e8f0; border-radius: 4px; }

/* Section Labels */
li.lw-nav-section-li {
    list-style: none !important;
    padding: 0.85rem 1.5rem 0.2rem !important;
    pointer-events: none !important;
    margin: 0 !important;
}
li.lw-nav-section-li:first-child { padding-top: 0.5rem !important; }
li.lw-nav-section-li span {
    font-size: 0.64rem !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 1.2px !important;
    color: #b0bec5 !important;
    display: block !important;
}

/* Nav Links */
.navbar.lw-sidebar-container .navbar-nav .nav-link {
    border-radius: 9px !important;
    margin: 1px 10px !important;
    padding: 0.6rem 1rem !important;
    font-size: 0.875rem !important;
    font-weight: 500 !important;
    color: #4a5568 !important;
    transition: background 0.18s, color 0.18s, transform 0.15s !important;
    display: flex !important;
    align-items: center !important;
    gap: 0.65rem !important;
    white-space: nowrap !important;
    overflow: hidden !important;
}
.navbar.lw-sidebar-container .navbar-nav .nav-link:hover {
    background: #f0faf5 !important;
    color: #128C7E !important;
    transform: translateX(2px) !important;
    text-decoration: none !important;
}
.navbar.lw-sidebar-container .navbar-nav .nav-link.active,
.lw-minimized-menu .navbar-vertical.navbar-expand-md .navbar-nav .nav-link.active {
    background: #e6f7f1 !important;
    color: #0d7a6e !important;
    font-weight: 600 !important;
    transform: none !important;
}
.navbar.lw-sidebar-container .navbar-nav li.nav-item { position: relative !important; }
.navbar.lw-sidebar-container .navbar-nav li.nav-item > .nav-link.active::after {
    content: '' !important;
    position: absolute !important;
    left: 0 !important; top: 18% !important;
    height: 64% !important; width: 3px !important;
    background: #25D366 !important;
    border-radius: 0 4px 4px 0 !important;
}

/* Icons */
.navbar.lw-sidebar-container .navbar-nav .nav-link .fa,
.navbar.lw-sidebar-container .navbar-nav .nav-link .fas,
.navbar.lw-sidebar-container .navbar-nav .nav-link .fab,
.navbar.lw-sidebar-container .navbar-nav .nav-link .far {
    width: 20px !important; text-align: center !important;
    font-size: 0.9rem !important; color: #94a3b8 !important;
    flex-shrink: 0 !important; transition: color 0.18s !important;
}
.navbar.lw-sidebar-container .navbar-nav .nav-link:hover .fa,
.navbar.lw-sidebar-container .navbar-nav .nav-link:hover .fas,
.navbar.lw-sidebar-container .navbar-nav .nav-link:hover .fab,
.navbar.lw-sidebar-container .navbar-nav .nav-link:hover .far,
.navbar.lw-sidebar-container .navbar-nav .nav-link.active .fa,
.navbar.lw-sidebar-container .navbar-nav .nav-link.active .fas,
.navbar.lw-sidebar-container .navbar-nav .nav-link.active .fab,
.navbar.lw-sidebar-container .navbar-nav .nav-link.active .far { color: #25D366 !important; }

/* Collapse Arrow */
.navbar.lw-sidebar-container .navbar-nav .nav-link[data-toggle=collapse]:after {
    right: 12px !important; color: #cbd5e0 !important;
    transition: color 0.18s !important; font-size: 0.7rem !important;
}
.navbar.lw-sidebar-container .navbar-nav .nav-link[data-toggle=collapse]:not(.collapsed):after { color: #25D366 !important; }

/* Submenu */
.navbar.lw-sidebar-container .lw-expandable-nav {
    background: transparent !important; border: none !important;
    border-left: 2px solid #e8edf2 !important;
    border-radius: 0 !important;
    margin: 2px 10px 4px 30px !important;
    padding: 2px 0 !important;
}
.navbar.lw-sidebar-container .lw-expandable-nav .nav-link {
    margin: 1px 0 1px 6px !important;
    padding: 0.45rem 0.75rem !important;
    font-size: 0.835rem !important;
    border-radius: 8px !important;
    color: #718096 !important;
    font-weight: 500 !important;
    transform: none !important;
}
.navbar.lw-sidebar-container .lw-expandable-nav .nav-link:hover {
    background: #f0faf5 !important; color: #128C7E !important; transform: translateX(2px) !important;
}
.navbar.lw-sidebar-container .lw-expandable-nav .nav-link.active {
    background: #e6f7f1 !important; color: #0d7a6e !important; font-weight: 600 !important;
}

/* Badge */
.lw-sb-badge {
    margin-left: auto !important;
    background: #25D366 !important; color: white !important;
    font-size: 0.67rem !important; padding: 2px 7px !important;
    border-radius: 20px !important; font-weight: 700 !important;
    min-width: 20px !important; text-align: center !important; flex-shrink: 0 !important;
}
.lw-sb-badge.lw-warn { background: #ed8936 !important; }

/* User Panel */
.lw-sb-user-panel {
    flex-shrink: 0 !important; border-top: 1px solid #f0f4f8 !important;
    padding: 0.85rem 1.2rem !important; display: flex !important;
    align-items: center !important; gap: 0.7rem !important; background: #fafbfc !important;
}
.lw-sb-avatar {
    width: 34px; height: 34px;
    background: linear-gradient(135deg, #25D366, #128C7E);
    border-radius: 9px; display: flex; align-items: center;
    justify-content: center; color: white; font-size: 0.85rem; flex-shrink: 0;
}
.lw-sb-user-info { flex: 1; min-width: 0; }
.lw-sb-user-name {
    font-size: 0.81rem; font-weight: 700; color: #2d3748;
    white-space: nowrap; overflow: hidden; text-overflow: ellipsis; display: block;
}
.lw-sb-user-role { font-size: 0.69rem; color: #a0aec0; display: block; }
.lw-sb-actions { display: flex; gap: 2px; flex-shrink: 0; }
.lw-sb-actions a {
    width: 28px; height: 28px; border-radius: 7px;
    display: flex; align-items: center; justify-content: center;
    color: #94a3b8 !important; font-size: 0.82rem;
    transition: background 0.18s, color 0.18s; text-decoration: none !important;
}
.lw-sb-actions a:hover { background: #e6f7f1 !important; color: #25D366 !important; }
.lw-sb-actions a.lw-sb-logout:hover { background: #fff5f5 !important; color: #e53e3e !important; }

/* Mobile header */
#sidenav-main .lw-sb-mobile-header {
    flex-shrink: 0; display: flex; align-items: center;
    justify-content: space-between; padding: 0.85rem 1.25rem; border-bottom: 1px solid #f0f4f8;
}

/* ================================================================
   SIDEBAR TOGGLE
   ================================================================ */
@media (min-width: 768px) {
    .main-content {
        margin-left: 250px !important;
        transition: margin-left 0.28s cubic-bezier(0.4,0,0.2,1) !important;
    }
    #navbar-main { margin-left: 0 !important; width: 100% !important; padding-left: 0 !important; }
}
body.lw-sb-collapsed #sidenav-main { transform: translateX(-250px) !important; }
body.lw-sb-collapsed .main-content { margin-left: 0 !important; }

/* ================================================================
   TOP NAVBAR — Clean White
   ================================================================ */
/* High-specificity override: beats app.css fixed/margin rules (specificity 121) */
body .main-content #navbar-main.lw-topnav {
    position: sticky !important;
    top: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    left: auto !important;
    width: 100% !important;
    padding-left: 0 !important;
}
#navbar-main.lw-topnav {
    background: #ffffff !important;
    border-bottom: 1px solid #e8edf2 !important;
    box-shadow: 0 1px 8px rgba(0,0,0,0.06) !important;
    padding: 0 !important; height: 62px !important;
    position: sticky !important; top: 0 !important; z-index: 1040 !important;
}
#navbar-main.lw-topnav .container-fluid {
    padding: 0 1.25rem !important; height: 100% !important;
    display: flex !important; align-items: center !important; gap: 0.5rem !important;
}
#lwSbToggleBtn {
    background: transparent !important; border: none !important;
    color: #64748b !important; font-size: 1rem !important;
    width: 36px !important; height: 36px !important;
    border-radius: 9px !important; cursor: pointer !important;
    display: flex !important; align-items: center !important; justify-content: center !important;
    flex-shrink: 0 !important; transition: background 0.18s, color 0.18s !important;
    margin-right: 0.25rem !important; padding: 0 !important;
}
#lwSbToggleBtn:hover { background: #f0faf5 !important; color: #25D366 !important; }
.lw-nav-vdivider { width: 1px; height: 24px; background: #e8edf2; margin: 0 0.25rem; flex-shrink: 0; }
.lw-topnav-title { font-size: 0.92rem; font-weight: 600; color: #2d3748; letter-spacing: 0.2px; white-space: nowrap; }
.lw-topnav-spacer { flex: 1 1 auto; }
#navbar-main.lw-topnav .navbar-nav { gap: 0.1rem !important; }
#navbar-main.lw-topnav .nav-item .nav-link {
    color: #64748b !important; padding: 0.4rem 0.5rem !important;
    border-radius: 9px !important; font-size: 0.875rem !important;
    display: flex !important; align-items: center !important; gap: 0.35rem !important;
    transition: background 0.18s, color 0.18s !important; white-space: nowrap !important;
}
#navbar-main.lw-topnav .nav-item .nav-link:hover { background: #f0faf5 !important; color: #128C7E !important; }
#navbar-main.lw-topnav .nav-item .nav-link .fa,
#navbar-main.lw-topnav .nav-item .nav-link .fas,
#navbar-main.lw-topnav .nav-item .nav-link .fab {
    font-size: 0.95rem !important; color: #94a3b8 !important; transition: color 0.18s !important;
}
#navbar-main.lw-topnav .nav-item .nav-link:hover .fa,
#navbar-main.lw-topnav .nav-item .nav-link:hover .fas { color: #25D366 !important; }
.lw-topnav-icon-btn {
    width: 36px !important; height: 36px !important; padding: 0 !important;
    display: flex !important; align-items: center !important; justify-content: center !important;
}
.lw-topnav-user .nav-link {
    background: #f8fafc !important; border: 1px solid #e8edf2 !important;
    border-radius: 10px !important; padding: 0.3rem 0.65rem !important;
    font-weight: 600 !important; color: #2d3748 !important; gap: 0.45rem !important;
}
.lw-topnav-user .nav-link:hover { border-color: #25D366 !important; background: #f0faf5 !important; color: #0d7a6e !important; }
.lw-topnav-user-dot {
    width: 28px; height: 28px;
    background: linear-gradient(135deg, #25D366, #128C7E);
    border-radius: 7px; display: inline-flex; align-items: center;
    justify-content: center; color: white; font-size: 0.75rem; flex-shrink: 0;
}
.lw-topnav-warn { color: #ed8936 !important; font-size: 0.78rem !important; }
#navbar-main.lw-topnav .dropdown-menu {
    border: 1px solid #e8edf2 !important; border-radius: 12px !important;
    box-shadow: 0 8px 24px rgba(0,0,0,0.1) !important;
    padding: 0.4rem !important; margin-top: 0.4rem !important;
}
#navbar-main.lw-topnav .dropdown-item {
    border-radius: 8px !important; font-size: 0.85rem !important;
    padding: 0.5rem 0.85rem !important; color: #4a5568 !important;
    display: flex !important; align-items: center !important; gap: 0.5rem !important;
}
#navbar-main.lw-topnav .dropdown-item:hover { background: #f0faf5 !important; color: #128C7E !important; }
#navbar-main.lw-topnav .dropdown-header {
    font-size: 0.75rem !important; color: #a0aec0 !important;
    padding: 0.5rem 0.85rem 0.35rem !important;
    text-transform: uppercase !important; letter-spacing: 0.5px !important;
}

/* ================================================================
   PAGE HEADER
   ================================================================ */
.lw-page-header {
    background: #ffffff; border-bottom: 1px solid #f0f4f8;
    padding: 1.5rem 0 1.2rem; margin-bottom: 0;
}
.lw-page-header-inner { display: flex; align-items: center; gap: 1rem; }
.lw-page-header-title {
    font-size: 1.5rem !important; font-weight: 700 !important;
    color: #1a202c !important; margin: 0 !important; padding: 0 !important;
    line-height: 1.3 !important; letter-spacing: -0.3px;
}
.lw-page-header-title::before {
    content: '';
    display: inline-block; width: 4px; height: 1.3em;
    background: linear-gradient(180deg, #25D366, #128C7E);
    border-radius: 4px; margin-right: 0.7rem; vertical-align: middle;
}
.lw-page-header-desc { font-size: 0.875rem; color: #718096; margin: 0.3rem 0 0; padding: 0; }

/* ================================================================
   STAT CARDS
   ================================================================ */
.lw-stats-header { padding: 1.5rem 0 2rem; }
.lw-stat-card {
    border: none !important; border-radius: 14px !important;
    box-shadow: 0 2px 12px rgba(0,0,0,0.07) !important;
    transition: transform 0.2s, box-shadow 0.2s !important;
    overflow: hidden !important; border-left: 4px solid transparent !important;
}
.lw-stat-card:hover { transform: translateY(-3px) !important; box-shadow: 0 8px 24px rgba(0,0,0,0.12) !important; }
.lw-stat-card .card-body { padding: 1.4rem 1.5rem !important; }
.lw-stat-card .lw-stat-label {
    font-size: 0.72rem !important; font-weight: 700 !important;
    text-transform: uppercase !important; letter-spacing: 0.8px !important;
    color: #718096 !important; margin-bottom: 0.35rem !important;
}
.lw-stat-card .lw-stat-value { font-size: 1.9rem !important; font-weight: 800 !important; line-height: 1.2 !important; margin-bottom: 0.5rem !important; }
.lw-stat-card .lw-stat-desc { font-size: 0.8rem !important; color: #a0aec0 !important; margin-top: 0.5rem !important; margin-bottom: 0 !important; }
.lw-stat-card .lw-stat-icon {
    width: 50px !important; height: 50px !important; border-radius: 12px !important;
    display: flex !important; align-items: center !important; justify-content: center !important; font-size: 1.25rem !important;
}
.lw-stat-card.lw-stat-blue   { border-left-color: #4299e1 !important; }
.lw-stat-card.lw-stat-green  { border-left-color: #48bb78 !important; }
.lw-stat-card.lw-stat-purple { border-left-color: #9f7aea !important; }
.lw-stat-card.lw-stat-orange { border-left-color: #ed8936 !important; }
.lw-stat-card.lw-stat-teal   { border-left-color: #38b2ac !important; }
.lw-stat-card.lw-stat-red    { border-left-color: #fc8181 !important; }
.lw-stat-card.lw-stat-indigo { border-left-color: #667eea !important; }
.lw-stat-card.lw-stat-pink   { border-left-color: #f687b3 !important; }
.lw-stat-card.lw-stat-blue   .lw-stat-value { color: #2b6cb0 !important; }
.lw-stat-card.lw-stat-green  .lw-stat-value { color: #276749 !important; }
.lw-stat-card.lw-stat-purple .lw-stat-value { color: #6b46c1 !important; }
.lw-stat-card.lw-stat-orange .lw-stat-value { color: #c05621 !important; }
.lw-stat-card.lw-stat-teal   .lw-stat-value { color: #285e61 !important; }
.lw-stat-card.lw-stat-red    .lw-stat-value { color: #c53030 !important; }
.lw-stat-card.lw-stat-indigo .lw-stat-value { color: #434190 !important; }
.lw-stat-card.lw-stat-pink   .lw-stat-value { color: #97266d !important; }
.lw-stat-icon.lw-icon-blue   { background: #ebf8ff !important; color: #3182ce !important; }
.lw-stat-icon.lw-icon-green  { background: #f0fff4 !important; color: #38a169 !important; }
.lw-stat-icon.lw-icon-purple { background: #faf5ff !important; color: #805ad5 !important; }
.lw-stat-icon.lw-icon-orange { background: #fffaf0 !important; color: #dd6b20 !important; }
.lw-stat-icon.lw-icon-teal   { background: #e6fffa !important; color: #319795 !important; }
.lw-stat-icon.lw-icon-red    { background: #fff5f5 !important; color: #e53e3e !important; }
.lw-stat-icon.lw-icon-indigo { background: #ebf4ff !important; color: #5a67d8 !important; }
.lw-stat-icon.lw-icon-pink   { background: #fff5f7 !important; color: #d53f8c !important; }

/* ================================================================
   QUICK START CARD
   ================================================================ */
.lw-quickstart {
    background: #ffffff; border-radius: 16px;
    box-shadow: 0 2px 16px rgba(0,0,0,0.07);
    padding: 1.75rem 2rem; margin-bottom: 2rem;
}
.lw-quickstart-header {
    display: flex; align-items: center; gap: 0.75rem;
    margin-bottom: 1.5rem; padding-bottom: 1rem; border-bottom: 1px solid #f0f4f8;
}
.lw-quickstart-header-icon {
    width: 40px; height: 40px;
    background: linear-gradient(135deg, #25D366, #128C7E);
    border-radius: 10px; display: flex; align-items: center; justify-content: center;
    color: white; font-size: 1rem; flex-shrink: 0;
}
.lw-quickstart-header h5 { margin: 0; font-size: 1rem; font-weight: 700; color: #1a202c; }
.lw-quickstart-header small { color: #94a3b8; font-size: 0.78rem; display: block; margin-top: 1px; }
.lw-qs-steps { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 0.6rem; }
.lw-qs-step {
    display: flex; align-items: flex-start; gap: 0.85rem;
    padding: 0.75rem 1rem; border-radius: 10px;
    background: #f8fafc; border: 1px solid #f0f4f8;
    transition: border-color 0.18s, background 0.18s;
}
.lw-qs-step:hover { background: #f0faf5; border-color: #b7ebd0; }
.lw-qs-num {
    width: 26px; height: 26px;
    background: linear-gradient(135deg, #25D366, #128C7E);
    border-radius: 50%; display: flex; align-items: center; justify-content: center;
    color: white; font-size: 0.72rem; font-weight: 700; flex-shrink: 0; margin-top: 1px;
}
.lw-qs-text { font-size: 0.875rem; color: #4a5568; line-height: 1.5; flex: 1; }
.lw-qs-text a { font-weight: 600; color: #128C7E !important; text-decoration: none; }
.lw-qs-text a:hover { color: #075E54 !important; text-decoration: underline; }

/* ================================================================
   ADMIN DASHBOARD
   ================================================================ */

/* Alert banners */
.lw-alert-banner {
    display: flex; align-items: center; gap: 0.65rem;
    padding: 0.85rem 1.2rem; border-radius: 10px;
    font-size: 0.875rem; font-weight: 500; margin-bottom: 0.6rem;
}
.lw-alert-banner i { font-size: 0.9rem; flex-shrink: 0; }
.lw-alert-danger { background: #fff5f5; color: #c53030; border: 1px solid #fed7d7; }
.lw-alert-warning { background: #fffaf0; color: #c05621; border: 1px solid #feebc8; }

/* Dashboard Card */
.lw-dash-card {
    background: #ffffff;
    border-radius: 16px;
    box-shadow: 0 2px 12px rgba(0,0,0,0.06);
    border: 1px solid #f0f4f8;
    display: flex; flex-direction: column;
    overflow: hidden;
}
.lw-dash-card-header {
    display: flex; align-items: flex-start; justify-content: space-between;
    padding: 1.25rem 1.5rem;
    border-bottom: 1px solid #f7fafc;
}
.lw-dash-card-eyebrow {
    font-size: 0.68rem; font-weight: 700; text-transform: uppercase;
    letter-spacing: 1px; color: #a0aec0; margin-bottom: 0.2rem;
}
.lw-dash-card-title {
    font-size: 1rem; font-weight: 700; color: #1a202c;
}
.lw-dash-card-badge {
    width: 38px; height: 38px; border-radius: 10px; flex-shrink: 0;
    display: flex; align-items: center; justify-content: center;
    font-size: 0.95rem;
    background: linear-gradient(135deg, #25D366, #128C7E);
    color: #fff;
}
.lw-badge-teal { background: linear-gradient(135deg, #38b2ac, #285e61) !important; }
.lw-dash-card-body { padding: 1.25rem 1.5rem; flex: 1; }
.lw-dash-card-body.p-0 { padding: 0 !important; }
.lw-dash-see-all {
    display: inline-flex; align-items: center;
    font-size: 0.82rem; font-weight: 600;
    color: #25D366 !important; text-decoration: none !important;
    padding: 0.4rem 0.9rem; border-radius: 8px;
    background: #f0faf5; border: 1px solid #c6f6d5;
    transition: background 0.18s, color 0.18s;
    white-space: nowrap; align-self: center;
}
.lw-dash-see-all:hover { background: #c6f6d5 !important; color: #128C7E !important; }

/* Summary list (right panel) */
.lw-summary-list { display: flex; flex-direction: column; gap: 0.1rem; }
.lw-summary-item {
    display: flex; align-items: center; gap: 0.85rem;
    padding: 0.7rem 0.5rem; border-radius: 10px;
    transition: background 0.15s;
}
.lw-summary-item:hover { background: #f8fafc; }
.lw-summary-icon {
    width: 34px; height: 34px; border-radius: 9px; flex-shrink: 0;
    display: flex; align-items: center; justify-content: center;
    font-size: 0.82rem;
}
.lw-summary-info { flex: 1; min-width: 0; }
.lw-summary-label { font-size: 0.82rem; color: #718096; font-weight: 500; }
.lw-summary-val {
    font-size: 1rem; font-weight: 800; flex-shrink: 0;
}
.lw-summary-blue  { background: #ebf8ff; color: #3182ce; }
.lw-summary-green { background: #f0fff4; color: #38a169; }
.lw-summary-teal  { background: #e6fffa; color: #319795; }
.lw-summary-purple{ background: #faf5ff; color: #805ad5; }
.lw-summary-orange{ background: #fffaf0; color: #dd6b20; }
.lw-summary-indigo{ background: #ebf4ff; color: #5a67d8; }
.lw-val-blue   { color: #2b6cb0; }
.lw-val-green  { color: #276749; }
.lw-val-teal   { color: #285e61; }
.lw-val-purple { color: #6b46c1; }
.lw-val-orange { color: #c05621; }
.lw-val-indigo { color: #434190; }

/* Vendors table */
.lw-dash-table { width: 100%; border-collapse: collapse; }
.lw-dash-table thead th {
    padding: 0.75rem 1.5rem;
    font-size: 0.68rem; font-weight: 700; text-transform: uppercase;
    letter-spacing: 0.8px; color: #a0aec0;
    background: #f8fafc; border-bottom: 1px solid #f0f4f8;
}
.lw-dash-table tbody tr {
    border-bottom: 1px solid #f7fafc;
    transition: background 0.15s;
}
.lw-dash-table tbody tr:last-child { border-bottom: none; }
.lw-dash-table tbody tr:hover { background: #f8fafc; }
.lw-dash-table tbody td { padding: 0.9rem 1.5rem; vertical-align: middle; }
.lw-vendor-cell { display: flex; align-items: center; gap: 0.75rem; }
.lw-vendor-avatar {
    width: 34px; height: 34px; border-radius: 9px; flex-shrink: 0;
    background: linear-gradient(135deg, #25D366, #128C7E);
    color: #fff; display: flex; align-items: center; justify-content: center;
    font-size: 0.85rem; font-weight: 700;
}
.lw-vendor-name { font-size: 0.875rem; font-weight: 600; color: #2d3748; }
.lw-date-text { font-size: 0.82rem; color: #718096; }
.lw-status-badge {
    display: inline-flex; align-items: center; gap: 0.4rem;
    font-size: 0.75rem; font-weight: 600;
    padding: 0.3rem 0.75rem; border-radius: 20px;
}
.lw-status-dot { width: 6px; height: 6px; border-radius: 50%; flex-shrink: 0; }
.lw-status-active { background: #f0fff4; color: #276749; }
.lw-status-active .lw-status-dot { background: #48bb78; }
.lw-status-inactive { background: #fff5f5; color: #c53030; }
.lw-status-inactive .lw-status-dot { background: #fc8181; }
.lw-dash-action-btn {
    display: inline-flex; align-items: center; justify-content: center;
    width: 32px; height: 32px; border-radius: 8px;
    color: #94a3b8 !important; font-size: 0.78rem;
    background: #f7fafc; border: 1px solid #edf2f7;
    text-decoration: none !important; transition: all 0.18s;
}
.lw-dash-action-btn:hover { background: #e6f7f1 !important; color: #25D366 !important; border-color: #c6f6d5 !important; }

/* ================================================================
   MOBILE RESPONSIVENESS (< 768px)
   ================================================================ */
@media (max-width: 767.98px) {
    /* Main content: full width, no sidebar margin */
    .main-content { margin-left: 0 !important; }

    /* Navbar: always visible on mobile, full width */
    #navbar-main.lw-topnav {
        display: flex !important;
        width: 100% !important;
        margin-left: 0 !important;
        left: 0 !important;
        position: sticky !important;
    }

    /* Sidebar: hidden off-screen by default on mobile */
    #sidenav-main.navbar.lw-sidebar-container {
        transform: translateX(-250px) !important;
        z-index: 1060 !important;
        box-shadow: none !important;
    }

    /* Sidebar open state on mobile (uses lw-sb-mobile-open class) */
    body.lw-sb-mobile-open #sidenav-main.navbar.lw-sidebar-container {
        transform: translateX(0) !important;
        box-shadow: 4px 0 24px rgba(0,0,0,0.25) !important;
    }

    /* Force sidebar inner content visible on mobile
       Bootstrap's navbar-expand-md hides these below 768px */
    #sidenav-main .navbar-collapse {
        display: flex !important;
        flex-direction: column !important;
        flex: 1 1 auto !important;
        overflow-y: auto !important;
        overflow-x: hidden !important;
    }
    #sidenav-main .lw-sb-logo-area {
        display: flex !important;
    }
    #sidenav-main .lw-sb-user-panel {
        display: flex !important;
    }

    /* Dark overlay backdrop when sidebar is open on mobile */
    body.lw-sb-mobile-open::after {
        content: '' !important;
        position: fixed !important;
        top: 0 !important; right: 0 !important; bottom: 0 !important; left: 0 !important;
        background: rgba(0,0,0,0.45) !important;
        z-index: 1055 !important;
    }

    /* Stat cards: smaller on mobile */
    .lw-stat-card .lw-stat-value { font-size: 1.5rem !important; }
    .lw-stats-header { padding: 1rem 0 1.5rem !important; }

    /* Page header: smaller on mobile */
    .lw-page-header { padding: 1rem 0 0.8rem !important; }
    .lw-page-header-title { font-size: 1.2rem !important; }
}
