/* =========================================
   ELITE CALENDAR MATRIX - CSS GACOR
========================================= */

.calendar-main-card {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0;
    min-height: auto !important;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    background: rgba(15, 20, 30, 0.6);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    border-radius: 20px;
    border: 1px solid rgba(255, 255, 255, 0.05);
    box-shadow: inset 0 0 40px rgba(0,0,0,0.5);
}

.mac-thumb-header {
    height: 65px !important;
    position: relative;
    background: rgba(0, 0, 0, 0.3);
    border-bottom: 1px solid rgba(255, 255, 255, 0.05);
    display: flex;
    align-items: center;
    padding: 0 20px;
}

.calendar-nav-controls {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    align-items: center;
    gap: 30px;
}

.calendar-month-title {
    margin: 0;
    color: #fff;
    font-size: 1.2rem;
    font-weight: 900;
    min-width: 160px;
    text-align: center;
    letter-spacing: 2px;
    text-transform: uppercase;
    text-shadow: 0 0 15px rgba(255,255,255,0.2);
}

.cal-nav-btn {
    background: rgba(255, 255, 255, 0.03);
    border: 1px solid rgba(255, 255, 255, 0.05);
    color: #888;
    width: 32px;
    height: 32px;
    border-radius: 8px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: 0.3s cubic-bezier(0.16, 1, 0.3, 1);
}

.cal-nav-btn:hover {
    background: rgba(168, 85, 247, 0.2);
    color: #fff;
    border-color: rgba(168, 85, 247, 0.5);
    box-shadow: 0 0 15px rgba(168, 85, 247, 0.4);
    transform: scale(1.1);
}

.calendar-weekdays-elite {
    display: grid;
    grid-template-columns: repeat(7, 1fr) 0.8fr; /* 7 HARI + 1 KOLOM WEEKLY */
    padding: 15px 20px !important;
    text-align: center;
    font-size: 11px;
    font-weight: 900;
    color: #6a7488;
    letter-spacing: 2px;
    background: rgba(0, 0, 0, 0.2);
    border-bottom: 1px solid rgba(255, 255, 255, 0.03);
}

#calendar-grid, .calendar-grid-elite {
    display: grid;
    grid-template-columns: repeat(7, 1fr) 0.8fr; /* 7 HARI + 1 KOLOM WEEKLY */
    gap: 8px !important; /* Gap gw rapetin dikit biar kaga kepanjangan */
    padding: 15px 20px;
    background: transparent;
    animation: 0.5s ease-out slideUpFade;
}

/* KOTAK TANGGAL */
.calendar-day-box {
    aspect-ratio: 1 / 0.9; /* Bikin agak kotak estetik */
    background: rgba(255, 255, 255, 0.015);
    border: 1px solid rgba(255, 255, 255, 0.04);
    border-radius: 12px;
    padding: 10px 12px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);
    position: relative;
    cursor: pointer;
    overflow: hidden;
}

.calendar-day-box:hover:not(.empty-day) {
    transform: translateY(-5px);
    background: rgba(255, 255, 255, 0.05) !important;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.6);
    border-color: rgba(255, 255, 255, 0.15);
    z-index: 10;
}

/* Titik Ungu (News/Event) Gacor */
.event-dot-glow {
    position: absolute;
    top: 8px;
    right: 8px;
    width: 6px;
    height: 6px;
    background: #c084fc;
    border-radius: 50%;
    box-shadow: 0 0 8px #c084fc, 0 0 15px #a855f7;
    animation: pulseGlow 2s infinite;
}

@keyframes pulseGlow {
    0% { transform: scale(1); opacity: 1; }
    50% { transform: scale(1.3); opacity: 0.6; }
    100% { transform: scale(1); opacity: 1; }
}

.day-num {
    font-weight: 800;
    font-size: 13px;
    color: #444; /* Gelap kalau belum dihover/gak ada data */
    transition: color 0.3s;
}

.calendar-day-box:hover .day-num {
    color: #fff;
}

/* WRAPPER BUAT PNL & TRADES COUNT */
.day-stats-wrapper {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 4px; /* Jarak antara nominal duit dan jumlah trade */
}

/* NOMINAL DUIT (PnL) */
.pnl-text {
    font-size: 12px !important;
    font-weight: 900;
    text-align: right;
    letter-spacing: -0.3px;
    font-family: monospace; /* Biar angka duitnya kelihatan Elite */
}

/* BADGE JUMLAH TRADES (ALA TRADEZELLA) */
.trade-count-badge {
    font-size: 8px;
    font-weight: 800;
    letter-spacing: 0.5px;
    text-transform: uppercase;
    padding: 2px 6px;
    border-radius: 4px;
    background: rgba(255, 255, 255, 0.05);
    color: #8a93a6;
}

/* WAAARNA-WARNA GACOR NEON */
.day-win {
    border: 1px solid rgba(0, 229, 255, 0.1);
    border-bottom: 3px solid #00e5ff !important;
    background: linear-gradient(to bottom, rgba(255, 255, 255, 0.01), rgba(0, 229, 255, 0.08)) !important;
}

.day-win:hover { border-color: rgba(0, 229, 255, 0.4); box-shadow: 0 10px 25px rgba(0, 229, 255, 0.15); }
.day-win .day-num { color: #80f2ff; }
.day-win .pnl-text { color: #00e5ff !important; text-shadow: 0 0 10px rgba(0, 229, 255, 0.4); }
.day-win .trade-count-badge { background: rgba(0, 229, 255, 0.1); color: #00e5ff; }

.day-loss {
    border: 1px solid rgba(239, 83, 80, 0.1);
    border-bottom: 3px solid #ef5350 !important;
    background: linear-gradient(to bottom, rgba(255, 255, 255, 0.01), rgba(239, 83, 80, 0.08)) !important;
}

.day-loss:hover { border-color: rgba(239, 83, 80, 0.4); box-shadow: 0 10px 25px rgba(239, 83, 80, 0.15); }
.day-loss .day-num { color: #f88; }
.day-loss .pnl-text { color: #ef5350 !important; text-shadow: 0 0 10px rgba(239, 83, 80, 0.4); }
.day-loss .trade-count-badge { background: rgba(239, 83, 80, 0.1); color: #ef5350; }

.day-be {
    border: 1px solid rgba(168, 85, 247, 0.1);
    border-bottom: 3px solid #a855f7 !important;
    background: linear-gradient(to bottom, rgba(255, 255, 255, 0.01), rgba(168, 85, 247, 0.08)) !important;
}

.day-be:hover { border-color: rgba(168, 85, 247, 0.4); box-shadow: 0 10px 25px rgba(168, 85, 247, 0.15); }
.day-be .day-num { color: #d8b4fe; }
.day-be .pnl-text { color: #a855f7 !important; text-shadow: 0 0 10px rgba(168, 85, 247, 0.4); }
.day-be .trade-count-badge { background: rgba(168, 85, 247, 0.1); color: #a855f7; }

/* LEGEND & OTHERS */
.legend-item {
    font-size: 10px;
    font-weight: 800;
    display: flex;
    align-items: center;
    gap: 8px;
    color: #8a93a6;
}

.dot-be, .dot-loss, .dot-win { width: 8px; height: 8px; border-radius: 50%; }
.dot-win { background: #c084fc; box-shadow: 0 0 8px #c084fc; }
.dot-loss { background: #ef5350; box-shadow: 0 0 8px #ef5350; }
.dot-be { background: #a855f7; box-shadow: 0 0 8px #a855f7; }

@keyframes slideUpFade {
    from { opacity: 0; transform: translateY(15px); }
    to { opacity: 1; transform: translateY(0); }
}

/* =========================================
   DAILY INSPECTOR (RIGHT PANEL) - GACOR CSS
========================================= */

/* Wadah Utama Panel Kanan */
.daily-inspector-card {
    margin: 0; 
    height: 100%; 
    display: flex; 
    flex-direction: column; 
    background: linear-gradient(135deg, rgba(15, 20, 30, 0.4), rgba(10, 10, 15, 0.8));
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    border-radius: 20px;
    border: 1px solid rgba(255, 255, 255, 0.05);
    box-shadow: inset 0 0 30px rgba(0,0,0,0.5);
    padding: 20px;
}

/* Header Inspector */
.insp-header {
    padding-bottom: 15px; 
    border-bottom: 1px solid rgba(255,255,255,0.05); 
    margin-bottom: 15px; 
    display: flex; 
    justify-content: space-between; 
    align-items: center;
}

.insp-section-title {
    color: #8a93a6; 
    margin-bottom: 12px; 
    border-bottom: 1px solid rgba(255,255,255,0.05); 
    padding-bottom: 8px;
    font-size: 11px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 2px;
}

/* --- KARTU ITEM (TRADES, NEWS, EVENTS) --- */
.insp-card {
    background: rgba(255, 255, 255, 0.02);
    border-radius: 8px;
    padding: 10px 15px;
    margin-bottom: 8px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);
    border: 1px solid rgba(255, 255, 255, 0.02);
}

.insp-card:hover {
    transform: translateX(5px);
    background: rgba(255, 255, 255, 0.05);
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.3);
}

/* --- TEMA PURPLE (WIN) & RED (LOSS) --- */

/* Trade Win (Purple) */
.insp-trade-win {
    border-left: 3px solid #a855f7;
}
.insp-trade-win .pnl-angka {
    color: #a855f7;
    text-shadow: 0 0 10px rgba(168, 85, 247, 0.4);
    font-weight: 900;
    font-family: monospace;
    font-size: 14px;
}
.insp-trade-win .side-badge { color: #a855f7; }

/* Trade Loss (Red) */
.insp-trade-loss {
    border-left: 3px solid #ef5350;
}
.insp-trade-loss .pnl-angka {
    color: #ef5350;
    text-shadow: 0 0 10px rgba(239, 83, 80, 0.4);
    font-weight: 900;
    font-family: monospace;
    font-size: 14px;
}
.insp-trade-loss .side-badge { color: #ef5350; }

/* High Impact News (Red Glow) */
.insp-news-high {
    border-left: 3px solid #ef5350;
    background: linear-gradient(90deg, rgba(239, 83, 80, 0.1) 0%, transparent 100%);
    display: block; /* Karena isinya numpuk ke bawah */
}
.insp-news-time { color: #ef5350; font-weight: 900; font-size: 10px; letter-spacing: 1px; }

/* Custom Event (Purple Glow) */
.insp-event-custom {
    border-left: 3px solid #c084fc;
    background: linear-gradient(90deg, rgba(168, 85, 247, 0.1) 0%, transparent 100%);
}

/* Scrollbar Khusus Inspector */
.insp-scroll-area {
    flex: 1;
    overflow-y: auto;
    padding-right: 5px;
}
.insp-scroll-area::-webkit-scrollbar { width: 4px; }
.insp-scroll-area::-webkit-scrollbar-thumb { background: rgba(168, 85, 247, 0.3); border-radius: 10px; }
.insp-scroll-area:hover::-webkit-scrollbar-thumb { background: rgba(168, 85, 247, 0.8); }

/* --- OVERRIDE KALENDER KIRI BIAR SINKRON PURPLE/RED --- */
/* (Hapus yg Biru, ganti Ungu) */
.day-win {
    border: 1px solid rgba(168, 85, 247, 0.1) !important;
    border-bottom: 3px solid #a855f7 !important;
    background: linear-gradient(to bottom, rgba(255, 255, 255, 0.01), rgba(168, 85, 247, 0.08)) !important;
}
.day-win:hover { border-color: rgba(168, 85, 247, 0.4) !important; box-shadow: 0 10px 25px rgba(168, 85, 247, 0.15) !important; }
.day-win .day-num { color: #d8b4fe !important; }
.day-win .pnl-text { color: #a855f7 !important; text-shadow: 0 0 10px rgba(168, 85, 247, 0.4) !important; }
.day-win .trade-count-badge { background: rgba(168, 85, 247, 0.1) !important; color: #a855f7 !important; }

/* Break Even jadi Abu-abu elegan */
.day-be {
    border-bottom: 3px solid #8a93a6 !important;
    background: linear-gradient(to bottom, rgba(255, 255, 255, 0.01), rgba(138, 147, 166, 0.08)) !important;
}
.day-be .pnl-text { color: #8a93a6 !important; }

/* --- CALENDAR HEADER METRICS CSS --- */ 
.calendar-stats-master { 
    display: grid; 
    grid-template-columns: repeat(6, 1fr); /* 6 KOLOM ELITE */
    gap: 15px; 
    margin-bottom: 30px; 
}

.calendar-stats-master .stat-card-mini { 
    display: flex; flex-direction: column; align-items: flex-start; /* Dibikin vertikal biar muat */
    gap: 12px; padding: 18px 20px; background: rgba(255, 255, 255, 0.02); 
    backdrop-filter: blur(20px); -webkit-backdrop-filter: blur(20px); 
    border: 1px solid rgba(255, 255, 255, 0.05); border-radius: 16px; margin: 0;
    margin: 15px; 
}

.stat-icon-bg { 
    width: 38px; height: 38px; /* Dikecilin dikit */
    border-radius: 10px; display: flex; align-items: center; justify-content: center; 
    font-size: 1.1rem; flex-shrink: 0; transition: transform 0.3s ease; 
}
/* Hover Effect Icon Muter/Ngezoom Dikit */
.calendar-stats-master .stat-card-mini:hover .stat-icon-bg {
    transform: scale(1.1) rotate(5deg);
}

/* Elite Colors untuk Icon Background */
.purple-bg { 
    background: rgba(168, 85, 247, 0.15); 
    color: #a855f7; 
    border: 1px solid rgba(168, 85, 247, 0.3); 
    box-shadow: inset 0 0 10px rgba(168, 85, 247, 0.2);
}
.blue-bg { 
    background: rgba(56, 189, 248, 0.15); 
    color: #38bdf8; 
    border: 1px solid rgba(56, 189, 248, 0.3); 
    box-shadow: inset 0 0 10px rgba(56, 189, 248, 0.2);
}
.pink-bg { 
    background: rgba(192, 132, 252, 0.15); 
    color: #c084fc; 
    border: 1px solid rgba(192, 132, 252, 0.3); 
    box-shadow: inset 0 0 10px rgba(192, 132, 252, 0.2);
}
.red-bg { 
    background: rgba(239, 83, 80, 0.15); 
    color: #ef5350; 
    border: 1px solid rgba(239, 83, 80, 0.3); 
    box-shadow: inset 0 0 10px rgba(239, 83, 80, 0.2);
}

/* Teks dan Angka */
.stat-content small {
    font-size: 10px;
    font-weight: 900;
    color: #a1a1aa;
    letter-spacing: 1.5px;
    display: block;
    margin-bottom: 4px;
}

.stat-content h2 { margin: 0; font-size: 1.4rem; font-weight: 900; font-family: 'JetBrains Mono', monospace; }

@media (max-width: 1200px) {
    .calendar-stats-master { grid-template-columns: repeat(3, 1fr) !important; gap: 15px; }
}
@media (max-width: 768px) { 
    .calendar-stats-master { grid-template-columns: repeat(2, 1fr) !important; gap: 12px; } 
}