.card-custom {
    border: 1px solid rgba(0, 0, 0, .125);
    box-shadow: none;
}

.sidebar-custom {
    margin-top: 90px !important;
}

.bg-login-custom {
    background-image: url('../img/bg-login.jpg');
    background-size: cover;
    background-position: bottom left;
}

.layout-navbar-fixed.layout-fixed .wrapper .sidebar {
    margin-top: 0px !important;
}

.sidebar {
    padding-bottom: 15rem !important;
}

.custom-menu-border-right {
    border-right: 1px solid rgba(0, 0, 0, .125);
}

.custom-menu-bg {
    background: #000050;
}

.btn-sm {
    cursor: pointer;
}

.h1,
.h2,
.h3,
.h4,
.h5,
.h6,
h1,
h2,
h3,
h4,
h5,
h6 {
    font-weight: bold !important;
}

.small-box {
    box-shadow: none !important;
    border: 1px solid rgba(0, 0, 0, .125);
}

/* ============================================
   MOCKUP REDESIGN STYLES
   ============================================ */

/* Dark Navy Button */
.btn-navy {
    background-color: #2c3e6b;
    border-color: #2c3e6b;
    color: #fff;
    border-radius: 20px;
    padding: 8px 24px;
    font-weight: 500;
}

.btn-navy:hover {
    background-color: #1e2d52;
    border-color: #1e2d52;
    color: #fff;
}

/* Request Card - card-based list item */
.request-card {
    border: 1px solid #dee2e6;
    border-radius: 12px;
    padding: 20px 24px;
    margin-bottom: 16px;
    background: #fff;
    position: relative;
    transition: all 0.2s ease-in-out;
}

.request-card .card-title-line {
    font-weight: bold;
    font-size: 14px;
    margin-bottom: 4px;
    color: #333333;
}

.request-card .card-detail-line {
    font-size: 13px;
    color: #555;
    margin-bottom: 2px;
}

.request-card .card-detail-line b {
    color: #333333;
}

.request-card .card-meta-line {
    font-size: 12px;
    color: #888;
    margin-bottom: 0;
}

.request-card .card-meta-line b {
    color: #555;
}

/* 3-dot Action Menu */
.action-dots {
    position: absolute;
    top: 16px;
    right: 16px;
    background: none;
    border: none;
    font-size: 20px;
    color: #333333;
    cursor: pointer;
    padding: 4px 8px;
    line-height: 1;
    letter-spacing: 1px;
}

.action-dots:hover {
    color: #333333;
}

.action-dropdown {
    position: absolute;
    top: 40px;
    right: 16px;
    z-index: 10;
    background: #fff;
    border: 1px solid #dee2e6;
    border-radius: 8px;
    min-width: 120px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
    display: none;
}

.action-dropdown.show {
    display: block;
}

.action-dropdown a,
.action-dropdown button {
    display: block;
    width: 100%;
    padding: 10px 16px;
    text-align: left;
    border: none;
    background: none;
    color: #333333;
    font-size: 14px;
    text-decoration: none;
    cursor: pointer;
}

.action-dropdown a:hover,
.action-dropdown button:hover {
    background: #f5f5f5;
}

.action-dropdown a+a,
.action-dropdown a+button,
.action-dropdown button+a {
    border-top: 1px solid #eee;
}

/* Comparison Table - Detail Request */
.comparison-table {
    width: 100%;
    border-collapse: collapse;
    font-size: 13px;
}

.comparison-table th,
.comparison-table td {
    border: 1px solid #dee2e6;
    padding: 10px 12px;
    text-align: center;
    vertical-align: middle;
}

.comparison-table th {
    background: #f8f9fa;
    font-weight: bold;
    color: #333333;
}

.comparison-table td.label-col {
    text-align: left;
    font-weight: bold;
    background: #f8f9fa;
}

.comparison-table td.mismatch {
    background: #e74c3c;
    color: #fff;
    font-weight: 500;
}

/* Request Info Card on Detail */
.request-info-card {
    border: 1px solid #dee2e6;
    border-radius: 12px;
    padding: 24px;
    background: #fff;
    margin-bottom: 20px;
}

.request-info-card p {
    margin-bottom: 6px;
    font-size: 13px;
    line-height: 1.6;
}

/* Tabs Styling for My Offer */
.nav-tabs-custom .nav-link {
    border: 1px solid #dee2e6;
    border-bottom: none;
    border-radius: 0;
    color: #555;
    font-weight: 500;
    padding: 10px 30px;
}

.nav-tabs-custom .nav-link.active {
    background: #fff;
    color: #333333;
    font-weight: bold;
    border-bottom: 2px solid #fff;
}

/* Filter Modal Form */
.filter-form .form-group {
    margin-bottom: 20px;
}

.filter-form label {
    font-weight: 500;
    font-size: 14px;
    color: #333333;
}

.filter-form .form-control,
.filter-form .select2-container .select2-selection--single {
    border-radius: 20px;
    height: 40px;
    padding: 6px 16px;
}

/* Page header with right button */
.page-header-flex {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 16px;
}

/* Clickable card */
a.request-card-link {
    text-decoration: none;
    color: inherit;
    display: block;
}

a.request-card-link:hover {
    text-decoration: none;
    color: inherit;
}

[class*="sidebar-light-"] .nav-sidebar>.nav-item>.nav-link.active {
    box-shadow: none !important;
}