/* ======================================================
   OWL CAROUSEL CORE – GLOBAL (ALL CAROUSELS)
====================================================== */

.owl-carousel {
    display: none;
    width: 100%;
    position: relative;
}

.owl-carousel.owl-loaded {
    display: block;
}

.owl-carousel .owl-stage-outer {
    position: relative;
    overflow: hidden;
}

.owl-carousel .owl-stage {
    position: relative;
}

.owl-carousel .owl-item {
    float: left;
    min-height: 1px;
}

/* ======================================================
   HARD DISABLE NAV & DOTS (FINAL)
====================================================== */

.owl-carousel .owl-nav,
.owl-carousel .owl-dots {
    display: none !important;
    visibility: hidden !important;
    pointer-events: none !important;
}

/* ======================================================
   CAROUSEL 1 — PIVOT TABLE
====================================================== */

#pivotCarousel {
    position: relative;
    top: -40px;
}

/* subtitle */
#pivotCarousel .pivot-subtitle {
    font-size: 20px;
    font-weight: 600;
    margin: 3px 0 5px;
    color: #6b7280;
    line-height: 1.2;
}

/* content height LOCK */
#pivotCarousel .pivot-content {    
    position: relative;
}

/* table scroll */
#pivotCarousel .pivot-content.table-responsive {
    overflow-y: auto;
    overflow-x: hidden;
}

/* ======================================================
   CAROUSEL 2 — TARGET B2S (SAMA DENGAN CAROUSEL 1)
====================================================== */

#pivotCarousel2 {
    position: relative;
    margin-top: 0px;
}

/* subtitle */
#pivotCarousel2 .pivot-subtitle {
    font-size: 20px;           /* SAMA */
    font-weight: 600;
    margin: 3px 0 5px;
    color: #2D3245;
    line-height: 1.2;
}

/* content height LOCK (SAMA) */
#pivotCarousel2 .pivot-content {
    height: 238px;
    position: relative;
}

/* chart wrapper */
#pivotCarousel2 .b2s-chart-wrap {
    height: 238px;
    position: relative;
    overflow: hidden;
}

/* canvas HARD LOCK */
#pivotCarousel2 canvas {
    display: block;
    width: 100% !important;
    height: 100% !important;
}

/* ======================================================
   PIVOT MINI TABLE (GLOBAL)
====================================================== */

.pivot-mini {
    width: 100%;
    border-collapse: collapse;
    font-size: 11px;
    background: rgba(255, 255, 255, 0.52);
}

.pivot-mini thead th {
    background: #E07A2E;
    color: #000;
    padding: 4px 6px;
    text-align: center;
    border: none;
    white-space: nowrap;
}

.pivot-mini td {
    padding: 3px 5px;
    text-align: center;
    color: #000;
    border: none;
    border-bottom: 1px solid #e0e0e0;    
}

.pivot-mini .status-col {
    text-align: left;
    font-weight: 500;
}

/* total row */
.pivot-mini .row-total td {
    background: #eeeeee;
    font-weight: bold;    
    border: none;
}


/* GENERAL STATUS column */
.pivot-mini th:first-child,
.pivot-mini td.status-col {
    width: 30%;
    min-width: 30%;
    white-space: nowrap;
    overflow: visible;
}

/* ======================================================
   INDIKATOR (GLOBAL)
====================================================== */

.total-cell {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    gap: 6px;
    white-space: nowrap;
}

.total-value {
    font-weight: 600;
}

.hp-indicator {
    font-size: 7px;
    font-weight: 500;
}

.hp-up {
    color: #1a7f37;
}

.hp-down {
    color: #d1242f;
}

/**** Carousel ****/
/* HAPUS SPACE KIRI CAROUSEL */
#pivotCarousel {
    margin-left: 0 !important;
    padding-left: 0 !important;
}



#pivotCarousel .owl-item {
    padding: 4px !important;
}

/* TABLE RESPONSIVE DI DALAM CAROUSEL */
#pivotCarousel table {
    width: 100% !important;
    table-layout: fixed;
}

#pivotCarousel th,
#pivotCarousel td {
    font-size: 11px;
    padding: 3px 5px;
}

#pivotCarousel th,
#pivotCarousel td {    
    overflow: hidden;
    text-overflow: ellipsis;
}

#pivotCarousel {
    max-width: 100%;
    margin-left: 0;
    padding-left: 0;
}

#pivotCarousel .owl-stage-outer {
    padding-left: 0;
}

#pivotCarousel .owl-item {
    padding: 4px;
}

/* ============================
   RINGKAS JARAK TITLE → TABLE
============================ */

/* Wrapper title */
.summary-title {
    margin-bottom: 6px !important;
}

/* H2 */
.summary-title h2 {
    margin-bottom: 2px !important;
    font-size: 22px; /* opsional, biar lebih kompak */
}

/* Subtitle */
.summary-title p {
    margin-bottom: 0 !important;
    font-size: 13px;
    line-height: 1.2;
}

/* Carousel tepat di bawah title */
#pivotCarousel {
    margin-top: 4px !important;
}

/* ======================================================
   SINKRON LEBAR & TINGGI
   TABLE (ROW 1) ⇄ BARCHART (ROW 2)
====================================================== */
.kpi-wda-carousel .owl-stage-outer {
    height: 328px !important; /* sesuaikan hasil inspect tertinggi */
}

.kpi-wda-slide{
    margin-top: -5%;
}

.summary-carousel .owl-stage-outer {
    height: 310px !important; /* sesuaikan hasil inspect tertinggi */
}

/* ======================================================
   FIX TABLE AGAR MENGISI CARD
====================================================== */

/* Table wrapper */
#pivotCarousel table.pivot-mini {
    margin-top: 65px !important;
    width: 100% !important;
    height: 80%;    
}

/* Hilangkan pembatas kolom */
#pivotCarousel th,
#pivotCarousel td {
    max-width: none !important;
    white-space: nowrap;
}

/* Body table scroll, header tetap */
#pivotCarousel .pivot-mini tbody {
    display: block;
    max-height: 100%;
    overflow-y: auto;
}

#pivotCarousel .pivot-mini thead,
#pivotCarousel .pivot-mini tbody tr {
    display: table;
    width: 100%;
    table-layout: fixed;
}

/* ======================================================
   NATIVE CAROUSEL (PIVOT ONLY)
====================================================== */

.native-carousel {
    overflow: hidden;
    position: relative;
    width: 100%;
}

.native-carousel .pivot-slide {
    display: none;
}

.native-carousel .pivot-slide.active {
    display: block;
}

.native-carousel .carousel-track {
    display: flex;
    width: 100%;
    transition: transform 0.6s ease;
}

.native-carousel .item {
    min-width: 100%;
    box-sizing: border-box;
}

.pivot-mini td {
    text-align: center;
    vertical-align: middle;
}

.pivot-mini td.status-col {
    text-align: left;
}

.total-cell {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 6px;
}

.total-value {
    font-weight: 600;
}

.row-total td {
    background: #f5f5f5;
}

/* ======================================================
   NATIVE CAROUSEL (BARCHART ONLY)
====================================================== */
.native-slide {
    display: none;
    width: 100%;
    height: 100%;
}

.native-slide.active {
    display: block;
}

#pivotCarousel2 {
    position: relative;
    overflow: hidden;
    width: 100%;
    height: 100%;
}

#pivotCarousel2 .carousel-track {
    display: flex;
    width: 100%;
    height: 100%;
    transition: transform 0.6s ease;
}

#pivotCarousel2 .item {
    flex: 0 0 100%;
    height: 100%;
}

/* ===============================
   SUMMARY NATIVE CAROUSEL FIX
================================ */

#summaryCarousel {
    position: relative;
    width: 100%;
}

/* WRAPPER YANG MEMOTONG */
#summaryCarousel .card-body-custom {
    overflow: hidden;   /* <<< INI KUNCI UTAMA */
    width: 100%;
}

/* TRACK */
#summaryCarousel .carousel-track {
    display: flex;
    flex-wrap: nowrap;
    width: 100%;
    transition: transform 0.6s ease;
}

/* SLIDE */
#summaryCarousel .item {
    flex: 0 0 100%;
    max-width: 100%;
    box-sizing: border-box;
}

#summaryCarousel,
#summaryCarousel * {
    max-width: 100% !important;
}

/* ===========================
   KPI + WDA Native Carousel
=========================== */
.card-body-custom.overflow-hidden {
    overflow: hidden;   /* memotong track */
    width: 100%;
    position: relative;
}

.kpi-wda-carousel {
    display: flex;
    transition: transform 0.5s ease-in-out;    
}

.kpi-wda-carousel .item {
    margin-top: 45px;
    flex: 0 0 100%;
    box-sizing: border-box;
    padding: 0 17px; /* sesuaikan */
}


