/* Override primary color in various components */
.btn-primary {
    border-color: #048001 !important;
    background-color: #048001 !important;
}

.btn-primary:focus,
.btn-primary:active,
.btn-primary.active {
    background-color: #036801 !important;
}

.btn-primary:hover:not(.disabled):not(:disabled) {
    box-shadow: 0 8px 25px -8px #048001;
}

.btn-check:checked + .btn-primary,
.btn-check:active + .btn-primary {
    background-color: #036801 !important;
}

.btn-flat-primary {
    color: #048001;
}

.btn-flat-primary:hover:not(.disabled):not(:disabled) {
    background-color: rgba(4, 128, 1, 0.12);
}

.btn-flat-primary:active,
.btn-flat-primary.active,
.btn-flat-primary:focus {
    background-color: rgba(4, 128, 1, 0.2);
    color: #048001;
}

.btn-outline-primary {
    border: 1px solid #048001 !important;
    color: #048001;
}

.btn-outline-primary:hover:not(.disabled):not(:disabled) {
    background-color: rgba(4, 128, 1, 0.04);
    color: #048001;
}

.btn-outline-primary:active,
.btn-outline-primary.active,
.btn-outline-primary:focus {
    background-color: rgba(4, 128, 1, 0.2);
    color: #048001;
}

.badge-light-primary {
    background-color: rgba(4, 128, 1, 0.12);
    color: #048001 !important;
}

.bg-primary,
.bg-gradient-primary {
    background: #048001 !important;
}

.border-primary {
    border-color: #048001 !important;
}

.text-primary {
    color: #048001 !important;
}

/* Form Control Focus Styles */
.form-control:focus {
    border-color: #048001 !important;
    box-shadow: 0 3px 10px 0 rgba(4, 128, 1, 0.1) !important;
}

.form-control:focus ~ .form-control-position i {
    color: #048001 !important;
}

.form-control-position:hover i {
    color: #048001 !important;
}

/* Input Group Focus */
.input-group:focus-within .input-group-text {
    border-color: #048001 !important;
}

/* Form Select Focus */
select.form-control:focus {
    border-color: #048001 !important;
}

/* Custom Select Focus */
.custom-select:focus {
    border-color: #048001 !important;
    box-shadow: 0 3px 10px 0 rgba(4, 128, 1, 0.1) !important;
}

/* Form Check Focus */
.form-check-input:focus {
    border-color: #048001 !important;
    box-shadow: 0 2px 4px 0 rgba(4, 128, 1, 0.4) !important;
}

/* Input Group Text Focus */
.input-group-text:focus {
    border-color: #048001 !important;
}

/* Form Password Toggle */
.form-password-toggle .input-group-text {
    color: #048001;
}

.form-password-toggle .input-group-text:hover {
    color: #036801;
}

.input-group.input-group-merge.form-password-toggle .form-control:focus ~ .input-group-text {
    border-color: #048001 !important;
    color: #048001;
}

/* Menu Styles */
.main-menu.menu-light .navigation > li.active > a {
    background: linear-gradient(118deg, #048001, rgba(4, 128, 1, .7));
    box-shadow: 0 0 10px 1px rgba(4, 128, 1, .7);
    color: #fff !important;
}

/* Custom styles */

/* Notification Badge Styles */
/* .badge-light-danger {
    background-color: #ea5455 !important;
    color: #fff !important;
    font-weight: 700;
    font-size: 11px;
    width: 18px;
    height: 18px;
    line-height: 18px;
    text-align: center;
    padding: 0;
    border-radius: 50% !important;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    white-space: nowrap;
    overflow: visible;
    text-overflow: clip;
    z-index: 10;
    position: relative;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    letter-spacing: -0.2px;
} */

/* Navbar notification badge */
#notification-count {
    position: absolute;
    top: -8px;
    right: -8px;
    font-size: 11px;
    width: 18px;
    height: 18px;
    line-height: 18px;
    text-align: center;
    padding: 0;
    border-radius: 50% !important;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
    white-space: nowrap;
    overflow: visible;
    text-overflow: clip;
    z-index: 10;
    background-color: #ea5455 !important;
    color: #fff !important;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    letter-spacing: -0.2px;
}

/* Sidebar notification badge */
#sidebar-notification-count {
    font-size: 11px;
    width: 18px;
    height: 18px;
    line-height: 18px;
    text-align: center;
    padding: 0;
    border-radius: 50% !important;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
    white-space: nowrap;
    overflow: visible;
    text-overflow: clip;
    background-color: #ea5455 !important;
    color: #fff !important;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    letter-spacing: -0.2px;
}

/* Pagination styles */
.page-link {
    color: #048001 !important;
    background-color: #fff;
    border: 1px solid #dee2e6;
}

.page-link:hover {
    color: #fff !important;
    background-color: #048001;
    border-color: #048001;
}

.page-item.active .page-link {
    color: #fff !important;
    background-color: #048001 !important;
    border-color: #048001 !important;
}

/* Tambahan khusus untuk badge status Habis di inventory */
.badge-habis {
    background-color: #ff6f61 !important; /* Merah coral, beda dengan notifikasi */
    color: #fff !important;
    font-weight: 600;
}

/* Custom CSS for WMS Application */

/* Location dropdown styling in navbar */
.dropdown-location .nav-link {
    display: flex;
    align-items: center;
    gap: 8px;
}

.dropdown-location .selected-location {
    font-size: 13px;
    font-weight: 500;
    color: #6e6b7b;
}

.dropdown-location .dropdown-item {
    display: flex;
    align-items: center;
    padding: 8px 16px;
}

.dropdown-location .dropdown-item i {
    color: #7367f0;
}

/* Responsive adjustments */
@media (max-width: 768px) {
    .dropdown-location .selected-location {
        display: none;
    }
}

/* --- Fix mobile sidebar menu (CSS dari template Vuexy asli) --- */
@media (max-width: 767.98px) {
  .menu-hide .main-menu,
  .menu-open .main-menu {
    transition: transform 0.25s, top 0.35s, height 0.35s;
  }
  .main-menu {
    transform: translate3d(-240px, 0, 0);
    backface-visibility: hidden;
    perspective: 1000;
  }
  .menu-open .main-menu {
    transform: translate3d(0, 0, 0);
  }
}

/* Print styles untuk meniru layout PDF */
@media print {
    /* Hide elements yang tidak perlu di print */
    .navbar,
    .main-menu,
    .footer,
    .card-tools,
    .dropdown,
    .btn,
    .modal,
    .sidenav-overlay,
    .app-content .content-wrapper .content-header,
    .breadcrumb,
    .dt-action-buttons,
    .card-header .head-label + div,
    .alert {
        display: none !important;
    }
    
    /* Show print header and footer */
    .print-header,
    .print-footer {
        display: block !important;
    }
    
    /* Reset layout untuk print */
    body {
        margin: 0 !important;
        padding: 0 !important;
        background: white !important;
        color: black !important;
        font-size: 12pt !important;
        line-height: 1.4 !important;
    }
    
    /* Container untuk print */
    .app-content {
        margin: 0 !important;
        padding: 20px !important;
        padding-bottom: 50px !important;
        width: 100% !important;
    }
    
    /* Card styling untuk print */
    .card {
        border: 1px solid #ddd !important;
        box-shadow: none !important;
        margin-bottom: 20px !important;
        page-break-inside: avoid !important;
    }
    
    .card-header {
        background: #f8f9fa !important;
        border-bottom: 2px solid #ddd !important;
        padding: 15px !important;
        margin: 0 !important;
    }
    
    .card-title {
        color: #333 !important;
        font-size: 18pt !important;
        font-weight: bold !important;
        margin: 0 !important;
    }
    
    .card-body {
        padding: 20px !important;
        margin: 0 !important;
    }
    
    /* Table styling untuk print */
    .table {
        width: 100% !important;
        border-collapse: collapse !important;
        margin-bottom: 15px !important;
        font-size: 10pt !important;
    }
    
    .table th,
    .table td {
        border: 1px solid #ddd !important;
        padding: 8px !important;
        text-align: left !important;
        vertical-align: top !important;
    }
    
    .table th {
        background: #f8f9fa !important;
        font-weight: bold !important;
        color: #333 !important;
    }
    
    .table-striped tbody tr:nth-of-type(odd) {
        background: #f9f9f9 !important;
    }
    
    /* Badge styling untuk print */
    .badge {
        border: 1px solid #333 !important;
        background: white !important;
        color: #333 !important;
        font-weight: bold !important;
        padding: 2px 6px !important;
        font-size: 9pt !important;
    }
    
    /* Header information styling */
    .table-borderless th,
    .table-borderless td {
        border: none !important;
        padding: 4px 0 !important;
    }
    
    .table-borderless strong {
        color: #333 !important;
        font-weight: bold !important;
    }
    
    /* Page breaks */
    .page-break {
        page-break-before: always !important;
    }
    
    .no-break {
        page-break-inside: avoid !important;
    }
    
    /* Summary section */
    .bg-light {
        background: #f8f9fa !important;
        border: 1px solid #ddd !important;
        padding: 15px !important;
        margin: 15px 0 !important;
    }
    
    /* Hide icons in print */
    [data-feather] {
        display: none !important;
    }
    
    /* Text colors for print */
    .text-muted {
        color: #666 !important;
    }
    
    .text-primary {
        color: #333 !important;
    }
    
    /* Responsive adjustments for print */
    .row {
        display: block !important;
    }
    
    .col-md-6,
    .col-12 {
        width: 100% !important;
        float: none !important;
        margin-bottom: 15px !important;
    }
    
    /* Print header */
    .print-header {
        text-align: center !important;
        margin-bottom: 20px !important;
        border-bottom: 2px solid #333 !important;
        padding-bottom: 10px !important;
        display: block !important;
    }
    
    .print-header h1 {
        font-size: 24pt !important;
        margin: 0 !important;
        color: #333 !important;
    }
    
    .print-header p {
        margin: 5px 0 !important;
        font-size: 10pt !important;
        color: #666 !important;
    }
    
    /* Footer for print */
    .print-footer {
        position: fixed !important;
        bottom: 0 !important;
        left: 0 !important;
        right: 0 !important;
        text-align: center !important;
        font-size: 8pt !important;
        color: #666 !important;
        border-top: 1px solid #ddd !important;
        padding: 5px !important;
        background: white !important;
        display: block !important;
    }
    
    /* Page numbers */
    @page {
        margin: 1in !important;
        size: A4 !important;
    }
    
    /* Avoid breaking important elements */
    .card,
    .table,
    .bg-light {
        page-break-inside: avoid !important;
    }
    
    /* Force page break before certain elements */
    .page-break-before {
        page-break-before: always !important;
    }
}


