:root{--ak-orange:#FF9D50;--ak-orange-d:#F07B3F;--ak-cream:#FFF9D8;--ak-teal:#1DCED8;--ak-teal-d:#12B4BE;--ak-mint:#55E07E;--ak-mint-d:#3CC76A;--ak-ink:#33393F;--ak-muted:#7A8288;--ak-bg:#FFFCF3;--ak-card:#FFF;--ak-r:16px;--ak-rs:12px;--ak-s1:8px;--ak-s2:16px;--ak-s3:24px;--ak-s4:32px;--ak-shadow:0 8px 24px rgba(51,57,63,.08)}
body{background:var(--ak-bg)!important;color:var(--ak-ink)!important}
h1,h2,h3,h4,h5{color:var(--ak-ink)!important;font-weight:700}
a{color:var(--ak-teal-d)}
.btn{border-radius:var(--ak-rs)!important;font-weight:600;padding:10px 20px!important}
.btn-primary{background:linear-gradient(135deg,var(--ak-orange),var(--ak-orange-d))!important;border:none!important;color:#fff!important;box-shadow:0 6px 16px rgba(240,123,63,.30)!important}
.btn-success{background:linear-gradient(135deg,var(--ak-mint),var(--ak-mint-d))!important;border:none!important;color:#fff!important}
.card,.card-panel{background:var(--ak-card)!important;border:none!important;border-radius:var(--ak-r)!important;box-shadow:var(--ak-shadow)!important;padding:var(--ak-s3)!important}
.table th{background:var(--ak-cream)!important;color:var(--ak-ink)!important;font-weight:700;border:none!important}
.table td{border-color:#F0EAD2!important}
.form-control,.form-select{border-radius:var(--ak-rs)!important;border:1px solid #E8E0C8!important;padding:10px 14px!important}
.form-control:focus,.form-select:focus{border-color:var(--ak-orange)!important;box-shadow:0 0 0 3px rgba(255,157,80,.18)!important}
.alert-success,.flash.ok{background:#E9FBF0!important;color:#1B7A3D!important;border:none!important;border-radius:var(--ak-rs)!important}
.alert-danger,.alert-error,.flash.err{background:#FDECEC!important;color:#C0392B!important;border:none!important;border-radius:var(--ak-rs)!important}
.sidebar,.sidebar-menu,#appSidebar{background:#fff!important}
.sidebar .nav-link{color:#5A6167!important;border-radius:var(--ak-rs)!important;margin:2px 8px!important;padding:8px 12px!important}
.sidebar .nav-link.active,.sidebar .nav-link:hover{background:linear-gradient(135deg,var(--ak-orange),var(--ak-orange-d))!important;color:#fff!important}
.topbar,.main-header,header.navbar{background:linear-gradient(135deg,var(--ak-orange),var(--ak-orange-d))!important;color:#fff!important}
.tile{background:#fff!important;border-radius:20px!important;box-shadow:var(--ak-shadow)!important}
.tile:nth-child(1) .tic{background:linear-gradient(135deg,#FF9D50,#F07B3F)!important}
.tile:nth-child(2) .tic{background:linear-gradient(135deg,#1DCED8,#12B4BE)!important}
.tile:nth-child(3) .tic{background:linear-gradient(135deg,#55E07E,#3CC76A)!important}
.tile:nth-child(4) .tic{background:linear-gradient(135deg,#FF9D50,#1DCED8)!important}
.tic{box-shadow:0 8px 16px rgba(51,57,63,.18)!important}
.tlab{color:var(--ak-ink)!important;font-weight:600}
.lp{background:linear-gradient(135deg,var(--ak-orange),var(--ak-orange-d))!important;color:#fff!important;border-radius:999px!important}
.sfb{border-radius:22px!important;box-shadow:var(--ak-shadow)!important}
.mb-3{margin-bottom:16px!important}
.mt-3{margin-top:16px!important}

/* HERO-FIX-V1 */
.text-danger{background:linear-gradient(135deg,#FF9D50 0%,#F07B3F 60%,#E86A2D 100%)!important;border-radius:16px!important}
.text-danger,.text-danger *{color:#fff!important}


/* ===== NEON EFFECTS ===== */
.neon-text {
    color: #0d6efd !important;
    text-shadow: 
        0 0 5px rgba(13, 110, 253, 0.5),
        0 0 10px rgba(13, 110, 253, 0.3),
        0 0 15px rgba(13, 110, 253, 0.2);
    font-weight: 700;
}

.neon-text-orange {
    color: #FF9D50 !important;
    text-shadow: 
        0 0 5px rgba(255, 157, 80, 0.6),
        0 0 10px rgba(255, 157, 80, 0.4),
        0 0 15px rgba(255, 157, 80, 0.3);
    font-weight: 700;
}

.neon-text-red {
    color: #dc3545 !important;
    text-shadow: 
        0 0 5px rgba(220, 53, 69, 0.5),
        0 0 10px rgba(220, 53, 69, 0.3);
    font-weight: 700;
}

.neon-border {
    border: 2px solid #0d6efd !important;
    box-shadow: 
        0 0 8px rgba(13, 110, 253, 0.4),
        inset 0 0 4px rgba(13, 110, 253, 0.1);
    border-radius: 12px;
}

.neon-glow {
    box-shadow: 
        0 0 10px rgba(13, 110, 253, 0.5),
        0 0 20px rgba(13, 110, 253, 0.3),
        0 0 30px rgba(13, 110, 253, 0.2);
}

/* Pulse animation untuk neon */
@keyframes neon-pulse {
    0%, 100% { opacity: 1; }
    50% { opacity: 0.85; }
}

.neon-pulse {
    animation: neon-pulse 2s ease-in-out infinite;
}

/* ===== KONTRAS TINGGI - PAKSA LIGHT MODE ===== */
/* Hapus semua kemungkinan dark mode */
html, body {
    background: #FFFCF3 !important;
    color: #33393F !important;
}

/* Pastikan semua text kontras dengan background */
h1, h2, h3, h4, h5, h6 {
    color: #1a1a1a !important;
}

p, span, div, label, td, th, li, a {
    color: #2c3e50 !important;
}

/* Link harus kontras */
a {
    color: #0d6efd !important;
    text-decoration: none;
}

a:hover {
    color: #0a58ca !important;
    text-decoration: underline;
}

/* Card dan container harus light */
.card, .card-panel, .tile, .sidebar {
    background: #ffffff !important;
    color: #33393F !important;
}

/* Input fields kontras */
.form-control, .form-select {
    background: #ffffff !important;
    color: #1a1a1a !important;
    border: 1px solid #dee2e6 !important;
}

.form-control::placeholder {
    color: #6c757d !important;
}

/* Alert colors - pastikan kontras */
.alert-success {
    background: #d1e7dd !important;
    color: #0f5132 !important;
}

.alert-danger {
    background: #f8d7da !important;
    color: #842029 !important;
}

.alert-warning {
    background: #fff3cd !important;
    color: #664d03 !important;
}

.alert-info {
    background: #cff4fc !important;
    color: #055160 !important;
}

/* Bottom nav active state dengan neon */
.bottom-nav-btn.active {
    color: #0d6efd !important;
    text-shadow: 0 0 5px rgba(13, 110, 253, 0.4);
}

/* Judul halaman dengan neon effect */
.judul-ibadah-header {
    color: #dc3545 !important;
    text-shadow: 
        0 0 5px rgba(220, 53, 69, 0.5),
        0 0 10px rgba(220, 53, 69, 0.3);
    font-weight: 700;
}




/* ===== SAFE NUCLEAR: HANYA TARGET TOMBOL TEMA/FLOATING ===== */
/* Target berdasarkan ID atau Class yang umum dipakai tombol tema */
#theme-toggle,
.theme-toggle,
.theme-toggle-btn,
.theme-switch,
#theme-switch,
.btn-floating,
.fab-theme,
[aria-label*="theme" i],
[title*="tema" i],
[title*="theme" i] {
    display: none !important;
    visibility: hidden !important;
    width: 0 !important;
    height: 0 !important;
    pointer-events: none !important;
}

/* Jika tombolnya punya inline style position fixed di bottom-right, tapi BUKAN bottom-nav */
button[style*="position: fixed"][style*="bottom"][style*="right"]:not(.bottom-nav-btn),
a[style*="position: fixed"][style*="bottom"][style*="right"] {
    display: none !important;
}

/* ===== PERBAIKI KONTRAS TEKS ===== */

/* Text muted yang terlalu pudar - perbaiki kontrasnya */
.text-muted,
.text-secondary,
small,
.text-small,
.subtitle,
.card-subtitle,
.text-muted-sm {
    color: #495057 !important; /* Abu-abu gelap yang masih kontras */
    opacity: 1 !important;
}

/* Pastikan teks di dalam card tetap terbaca */
.card .text-muted,
.card-panel .text-muted,
.tile .text-muted {
    color: #5a6268 !important;
}

/* Perbaiki teks di header/sapaan */
.header-greeting,
.greeting-text,
h5.card-title,
.card-header h5 {
    color: #1a1a1a !important;
    font-weight: 700;
}

/* Perbaiki kontras teks di dashboard tiles */
.tile .tic,
.tile .tlab,
.tile .tval {
    color: #1a1a1a !important;
    font-weight: 600;
}

/* Pastikan label dan keterangan terbaca */
.form-label,
.form-text,
.label,
.badge {
    color: #343a40 !important;
}

/* Perbaiki teks di tabel */
.table th {
    color: #1a1a1a !important;
    font-weight: 700;
}

.table td {
    color: #2c3e50 !important;
}

/* Perbaiki teks di sidebar/menu */
.sidebar .nav-link,
.sidebar-menu a,
.menu-text {
    color: #495057 !important;
}

.sidebar .nav-link.active,
.sidebar .nav-link:hover {
    color: #ffffff !important;
}

/* Perbaiki kontras teks link */
a:not(.btn) {
    color: #0d6efd !important;
}

a:not(.btn):hover {
    color: #0a58ca !important;
    text-decoration: underline;
}

/* Pastikan teks di alert terbaca dengan baik */
.alert {
    color: #1a1a1a !important;
}

.alert-success {
    color: #0f5132 !important;
}

.alert-danger,
.alert-error {
    color: #842029 !important;
}

.alert-warning {
    color: #664d03 !important;
}

.alert-info {
    color: #055160 !important;
}

/* Perbaiki teks di tombol */
.btn {
    color: #ffffff !important;
}

.btn-outline-secondary,
.btn-outline-primary {
    color: #0d6efd !important;
}

/* Pastikan placeholder input tetap terbaca */
.form-control::placeholder,
.form-select::placeholder {
    color: #6c757d !important;
    opacity: 1;
}

/* Perbaiki teks di badge */
.badge {
    color: #ffffff !important;
    font-weight: 600;
}

.badge.bg-light {
    color: #1a1a1a !important;
}

/* Perbaiki kontras untuk teks kecil */
small,
.small,
.fineprint,
.text-xs,
.text-sm {
    color: #495057 !important;
    opacity: 0.9;
}

/* Pastikan teks di card header/footer terbaca */
.card-header,
.card-footer {
    color: #1a1a1a !important;
}

/* Perbaiki teks di bottom navigation */
.bottom-nav-btn {
    color: #6c757d !important;
}

.bottom-nav-btn.active {
    color: #0d6efd !important;
    font-weight: 600;
}

/* Perbaiki teks di modal */
.modal-title,
.modal-header h5 {
    color: #1a1a1a !important;
}

.modal-body {
    color: #2c3e50 !important;
}


/* ===== TEKS TERANG DI DASHBOARD HERO (background merah marun) ===== */
.dashboard-hero {
    background: linear-gradient(135deg, #700000, #4D0000) !important;
    color: #ffffff !important;
    border-radius: 16px;
    padding: 24px !important;
    margin-bottom: 24px;
}

.dashboard-hero h2,
.dashboard-hero h3,
.dashboard-hero h4,
.dashboard-hero h5 {
    color: #ffffff !important;
    font-weight: 700;
    text-shadow: 0 2px 4px rgba(0,0,0,0.2);
}

.dashboard-hero p,
.dashboard-hero small,
.dashboard-hero .text-muted,
.dashboard-hero .text-secondary {
    color: #f0f0f0 !important; /* Abu-abu sangat terang */
    opacity: 0.95;
}

/* ===== TEKS TERANG DI SEMUA BACKGROUND GELAP ===== */
/* Target: elemen dengan background gelap (merah marun, biru tua, dll) */
[style*="background-color: #700000"],
[style*="background-color: #4D0000"],
[style*="background: #700000"],
[style*="background: #4D0000"],
[style*="background-color: rgb(112"],
[style*="background-color: rgb(77"],
.bg-dark-red,
.bg-maroon {
    color: #ffffff !important;
}

[style*="background-color: #700000"] *,
[style*="background-color: #4D0000"] *,
[style*="background: #700000"] *,
[style*="background: #4D0000"] *,
.bg-dark-red *,
.bg-maroon * {
    color: #ffffff !important;
}

[style*="background-color: #700000"] .text-muted,
[style*="background-color: #4D0000"] .text-muted,
[style*="background-color: #700000"] small,
[style*="background-color: #4D0000"] small,
.bg-dark-red .text-muted,
.bg-maroon .text-muted {
    color: #e8e8e8 !important;
}

/* ===== STAT CARD DI DASHBOARD ===== */
.dashboard-stat-card {
    background: #ffffff !important;
    color: #1a1a1a !important;
}

.dashboard-stat-card .dashboard-stat-icon {
    background: linear-gradient(135deg, #FF9D50, #F07B3F) !important;
    color: #ffffff !important;
}

.dashboard-stat-card h3,
.dashboard-stat-card .stat-value {
    color: #1a1a1a !important;
    font-weight: 700;
}

.dashboard-stat-card p,
.dashboard-stat-card .stat-label {
    color: #495057 !important;
}


/* ===== GLASSMORPHISM LOGIN FORM ===== */
.glass-login {
    background: rgba(255, 255, 255, 0.85) !important; /* Putih transparan 85% */
    backdrop-filter: blur(12px); /* Efek blur di belakang card */
    -webkit-backdrop-filter: blur(12px);
    border: 1px solid rgba(255, 255, 255, 0.4) !important;
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.1) !important;
    border-radius: 20px !important;
}

/* Pastikan teks di dalam glass-login tetap kontras */
.glass-login h2,
.glass-login h3,
.glass-login h4,
.glass-login h5,
.glass-login p,
.glass-login label,
.glass-login .form-label {
    color: #1a1a1a !important;
}

.glass-login .form-control,
.glass-login .form-select {
    background: rgba(255, 255, 255, 0.9) !important;
    border: 1px solid #dee2e6 !important;
}


/* PAKSA TRANSPARAN UNTUK LOGIN CARD */
.auth-stack .auth-card {
    background: rgba(255, 255, 255, 0.05) !important;
    backdrop-filter: blur(15px) !important;
    -webkit-backdrop-filter: blur(15px) !important;
    border: 1px solid rgba(255, 255, 255, 0.35) !important;
}

.auth-stack .auth-card .form-control,
.auth-stack .auth-card .input-group-text {
    background: rgba(255, 255, 255, 0.85) !important;
}


/* =========================================
   FIX BUTTON VISIBILITY - EXPLICIT COLORS
   ========================================= */

/* Base button - ensure background and text are visible */
.btn {
    background: linear-gradient(135deg, #F07B3F, #E0652F) !important;
    color: #ffffff !important;
    border: 2px solid transparent !important;
    text-shadow: 0 1px 2px rgba(0,0,0,0.1) !important;
}

.btn:hover {
    background: linear-gradient(135deg, #E0652F, #D05520) !important;
    color: #ffffff !important;
}

/* Primary button - Orange */
.btn-primary {
    background: linear-gradient(135deg, #F07B3F, #E0652F) !important;
    color: #ffffff !important;
    border: none !important;
}

.btn-primary:hover {
    background: linear-gradient(135deg, #E0652F, #D05520) !important;
    color: #ffffff !important;
}

/* Secondary button - Gray */
.btn-secondary {
    background: linear-gradient(135deg, #6c757d, #5a6268) !important;
    color: #ffffff !important;
    border: none !important;
}

.btn-secondary:hover {
    background: linear-gradient(135deg, #5a6268, #495057) !important;
    color: #ffffff !important;
}

/* Success button - Green */
.btn-success {
    background: linear-gradient(135deg, #28a745, #218838) !important;
    color: #ffffff !important;
    border: none !important;
}

.btn-success:hover {
    background: linear-gradient(135deg, #218838, #1e7e34) !important;
    color: #ffffff !important;
}

/* Danger button - Red */
.btn-danger {
    background: linear-gradient(135deg, #dc3545, #c82333) !important;
    color: #ffffff !important;
    border: none !important;
}

.btn-danger:hover {
    background: linear-gradient(135deg, #c82333, #bd2130) !important;
    color: #ffffff !important;
}

/* Warning button - Yellow */
.btn-warning {
    background: linear-gradient(135deg, #ffc107, #e0a800) !important;
    color: #212529 !important;
    border: none !important;
}

.btn-warning:hover {
    background: linear-gradient(135deg, #e0a800, #d39e00) !important;
    color: #212529 !important;
}

/* Info button - Cyan */
.btn-info {
    background: linear-gradient(135deg, #17a2b8, #138496) !important;
    color: #ffffff !important;
    border: none !important;
}

.btn-info:hover {
    background: linear-gradient(135deg, #138496, #117a8b) !important;
    color: #ffffff !important;
}

/* Outline buttons - Transparent with colored border */
.btn-outline-primary {
    background: transparent !important;
    color: #F07B3F !important;
    border: 2px solid #F07B3F !important;
}

.btn-outline-primary:hover {
    background: #F07B3F !important;
    color: #ffffff !important;
}

.btn-outline-secondary {
    background: transparent !important;
    color: #6c757d !important;
    border: 2px solid #6c757d !important;
}

.btn-outline-secondary:hover {
    background: #6c757d !important;
    color: #ffffff !important;
}

.btn-outline-success {
    background: transparent !important;
    color: #28a745 !important;
    border: 2px solid #28a745 !important;
}

.btn-outline-success:hover {
    background: #28a745 !important;
    color: #ffffff !important;
}

.btn-outline-danger {
    background: transparent !important;
    color: #dc3545 !important;
    border: 2px solid #dc3545 !important;
}

.btn-outline-danger:hover {
    background: #dc3545 !important;
    color: #ffffff !important;
}

.btn-outline-warning {
    background: transparent !important;
    color: #ffc107 !important;
    border: 2px solid #ffc107 !important;
}

.btn-outline-warning:hover {
    background: #ffc107 !important;
    color: #212529 !important;
}

.btn-outline-info {
    background: transparent !important;
    color: #17a2b8 !important;
    border: 2px solid #17a2b8 !important;
}

.btn-outline-info:hover {
    background: #17a2b8 !important;
    color: #ffffff !important;
}

/* Small buttons */
.btn-sm {
    padding: 6px 12px !important;
    font-size: 13px !important;
}

/* Ensure button text is always visible */
.btn i, .btn span, .btn svg, .btn b, .btn strong {
    color: inherit !important;
}

/* Disabled buttons */
.btn:disabled, .btn.disabled {
    background: #e9ecef !important;
    color: #6c757d !important;
    border-color: #dee2e6 !important;
    opacity: 0.65 !important;
    cursor: not-allowed !important;
}

/* Button group */
.btn-group .btn {
    margin: 0 !important;
}

/* Floating action button */
.btn-floating, .fab {
    background: linear-gradient(135deg, #25D366, #128C7E) !important;
    color: #ffffff !important;
    border: none !important;
    box-shadow: 0 6px 20px rgba(37, 211, 102, 0.4) !important;
}

.btn-floating:hover, .fab:hover {
    background: linear-gradient(135deg, #128C7E, #075E54) !important;
    color: #ffffff !important;
}

/* Theme toggle button (if exists) */
.theme-toggle-btn {
    background: linear-gradient(135deg, #6c757d, #5a6268) !important;
    color: #ffffff !important;
    border: none !important;
}

/* Bottom nav button */
.bottom-nav-btn {
    background: transparent !important;
    color: #6c757d !important;
    border: none !important;
}

.bottom-nav-btn.active {
    background: linear-gradient(135deg, #F07B3F, #E0652F) !important;
    color: #ffffff !important;
}

/* END BUTTON FIX */
