/* JA Courier Management System – Dark Mode
 * Toggle via floating 🌙 / ☀️ button (localStorage + optional default setting)
 */

/* ===== Core surfaces ===== */
body.jacms-dark-mode .jacms-main,
body.jacms-dark-mode .jacms-cust-main,
body.jacms-dark-mode .jacms-page,
body.jacms-dark-mode .jacms-wrap,
.jacms-dark-mode .jacms-main,
.jacms-dark-mode .jacms-cust-main,
.jacms-dark-mode .jacms-page,
.jacms-dark-mode .jacms-wrap {
    background: #0f1419 !important;
    color: #e2e8f0 !important;
}

.jacms-dark-mode .jacms-panel,
.jacms-dark-mode .jacms-cust-panel,
.jacms-dark-mode .jacms-public-box,
.jacms-dark-mode .jacms-order-card,
.jacms-dark-mode .jacms-chart-panel {
    background: #1a2332 !important;
    border-color: #2d3748 !important;
    color: #e2e8f0 !important;
}

.jacms-dark-mode .jacms-panel-header,
.jacms-dark-mode .jacms-topbar {
    background: #151c27 !important;
    border-color: #2d3748 !important;
    color: #f1f5f9 !important;
}

.jacms-dark-mode h1,
.jacms-dark-mode h2,
.jacms-dark-mode h3,
.jacms-dark-mode .jacms-welcome h1,
.jacms-dark-mode .jacms-welcome small {
    color: #f8fafc !important;
}

.jacms-dark-mode .jacms-welcome small {
    opacity: 0.75;
}

/* ===== Tables ===== */
.jacms-dark-mode .jacms-table th {
    background: #1e293b !important;
    color: #94a3b8 !important;
}
.jacms-dark-mode .jacms-table td {
    border-color: #334155 !important;
    color: #e2e8f0 !important;
}
.jacms-dark-mode .jacms-table tr:hover td {
    background: rgba(255,255,255,0.03) !important;
}
.jacms-dark-mode .jacms-detail-table th { color: #94a3b8 !important; }

/* ===== Forms ===== */
.jacms-dark-mode input,
.jacms-dark-mode select,
.jacms-dark-mode textarea,
.jacms-dark-mode .jacms-search input {
    background: #0f172a !important;
    border-color: #334155 !important;
    color: #f1f5f9 !important;
}
.jacms-dark-mode input::placeholder,
.jacms-dark-mode textarea::placeholder {
    color: #64748b !important;
}
.jacms-dark-mode #lookup-price { color: #4ade80 !important; }
.jacms-dark-mode .jacms-order-meta,
.jacms-dark-mode p { color: #94a3b8 !important; }

/* ===== Status cards (keep brand colors, darken base) ===== */
.jacms-dark-mode .jacms-status-cards .jacms-card {
    box-shadow: 0 4px 20px rgba(0,0,0,0.45) !important;
}
.jacms-dark-mode .jacms-card-label { color: rgba(255,255,255,0.9) !important; }
.jacms-dark-mode .jacms-card-value { color: #fff !important; }

/* ===== Badges / pills ===== */
.jacms-dark-mode .jacms-badge { filter: brightness(1.1); }
.jacms-dark-mode .jacms-stat-pill {
    background: #1e293b !important;
    border-color: #334155 !important;
    color: #e2e8f0 !important;
}

/* ===== Nav items on light content areas ===== */
.jacms-dark-mode .jacms-notif-panel,
.jacms-dark-mode .jacms-notif-item {
    background: #1a2332 !important;
    color: #e2e8f0 !important;
    border-color: #2d3748 !important;
}
.jacms-dark-mode .jacms-notif-item.unread { background: #13261a !important; }
.jacms-dark-mode .jacms-notif-empty { color: #64748b !important; }

/* ===== Map container ===== */
.jacms-dark-mode .jacms-map {
    border-color: #009B3A !important;
    background: #1e293b !important;
}

/* ===== Footer text in content ===== */
.jacms-dark-mode .jacms-dash-footer { color: rgba(255,255,255,0.55) !important; }

/* ===== Parish list / misc ===== */
.jacms-dark-mode .jacms-parish-item {
    border-color: #334155 !important;
    color: #e2e8f0 !important;
}
.jacms-dark-mode .jacms-parish-item span { color: #94a3b8 !important; }

/* ===== Charts area text ===== */
.jacms-dark-mode .jacms-chart-container { color: #e2e8f0; }

/* ===== Dark-mode friendly glow (slightly brighter so it pops) ===== */
.jacms-dark-mode .jacms-sidebar::after,
.jacms-dark-mode .jacms-cust-sidebar::after {
    box-shadow:
        0 0 10px 3px rgba(0, 155, 58, 0.85),
        0 0 20px 5px rgba(255, 209, 0, 0.6),
        0 0 30px 8px rgba(0, 155, 58, 0.4) !important;
}

/* ===== Floating dark-mode toggle button ===== */
#jacms-dark-toggle {
    position: fixed;
    bottom: 90px;
    right: 20px;
    z-index: 10001;
    width: 48px;
    height: 48px;
    border-radius: 50%;
    border: 2px solid #FFD100;
    background: #0a1f0a;
    color: #FFD100;
    font-size: 1.35rem;
    line-height: 1;
    cursor: pointer;
    box-shadow: 0 4px 16px rgba(0,0,0,0.4);
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background 0.2s ease, transform 0.15s ease, box-shadow 0.2s ease;
}
#jacms-dark-toggle:hover {
    background: #009B3A;
    color: #fff;
    transform: scale(1.08);
    box-shadow: 0 6px 20px rgba(0,155,58,0.45);
}
#jacms-dark-toggle:active {
    transform: scale(0.96);
}
body.jacms-dark-mode #jacms-dark-toggle {
    background: #1a2332;
    border-color: #FFD100;
    color: #FFD100;
}
body.jacms-dark-mode #jacms-dark-toggle:hover {
    background: #FFD100;
    color: #0a1f0a;
}

/* Mobile: keep toggle accessible */
@media (max-width: 960px) {
    #jacms-dark-toggle {
        bottom: 20px;
        right: 16px;
        width: 44px;
        height: 44px;
        font-size: 1.2rem;
    }
}
