/* =========================================================
   TEMA ADMIN MASJID - GREEN GLASSMORPHISM (PREMIUM UI)
   ========================================================= */

:root {
    /* Palet Warna Islami Modern */
    --primary-dark: #0f523a;
    --primary-light: #1b7a58;
    --accent-gold: #d4af37;
    --text-dark: #2d3436;
    
    /* Efek Kaca (Glass) */
    --glass-dark: rgba(0, 0, 0, 0.25);
    --glass-light: rgba(255, 255, 255, 0.15);
    --glass-border: rgba(255, 255, 255, 0.1);
}

* { 
    box-sizing: border-box; 
    margin: 0; 
    padding: 0; 
}

/* 1. BACKGROUND UTAMA (Gradasi Hijau Zamrud) */
body { 
    font-family: 'Poppins', 'Segoe UI', Tahoma, sans-serif; 
    /* Latar belakang hijau elegan yang menetap saat di-scroll */
    background: linear-gradient(135deg, var(--primary-dark) 0%, var(--primary-light) 100%);
    background-attachment: fixed;
    display: flex; 
    color: var(--text-dark);
}

/* =========================================================
   2. LAYOUT KIRI: SIDEBAR KACA GELAP (FROSTED DARK GLASS)
   ========================================================= */
.sidebar { 
    width: 250px; 
    background: var(--glass-dark); 
    backdrop-filter: blur(15px);
    -webkit-backdrop-filter: blur(15px);
    border-right: 1px solid var(--glass-border);
    color: #fff; 
    height: 100vh; 
    position: fixed; 
    overflow-y: auto;
}
.sidebar-header { 
    padding: 20px; 
    background: rgba(0, 0, 0, 0.15); 
    text-align: center; 
    border-bottom: 1px solid var(--glass-border); 
}
.sidebar-header h3 {
    margin: 0;
    color: var(--accent-gold);
    letter-spacing: 1px;
}
.sidebar-header small { opacity: 0.8; font-size: 12px; }

.sidebar-menu { list-style: none; padding-top: 10px; margin: 0; }
.sidebar-menu li a { 
    display: flex; align-items: center; gap: 12px; 
    padding: 15px 20px; color: #e2e8f0; 
    text-decoration: none; transition: all 0.3s ease; 
    border-left: 3px solid transparent;
}
.sidebar-menu li a:hover { 
    background: rgba(255, 255, 255, 0.08); 
    color: #fff; 
    border-left: 3px solid var(--accent-gold);
}

/* =========================================================
   3. LAYOUT KANAN: KONTEN & TOPBAR KACA BENING
   ========================================================= */
.main-content { 
    margin-left: 250px; 
    width: calc(100% - 250px); 
    min-height: 100vh; 
}
.topbar { 
    background: var(--glass-light); 
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    border-bottom: 1px solid var(--glass-border);
    padding: 15px 25px; 
    display: flex; 
    justify-content: space-between; 
    align-items: center; 
    color: #fff;
    box-shadow: 0 4px 15px rgba(0,0,0,0.05);
}
.topbar h2 { margin: 0; font-size: 20px; font-weight: 500; }
.content { padding: 25px; }

/* =========================================================
   4. AREA KERJA: KOTAK FORM / KARTU KACA PUTIH
   ========================================================= */
.card-form { 
    /* Putih transparan 92% agar teks di dalamnya sangat jelas terbaca */
    background: rgba(255, 255, 255, 0.92); 
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    padding: 25px; 
    border-radius: 12px; 
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1); 
    border: 1px solid rgba(255,255,255,0.5);
    margin-bottom: 20px;
}
.card-form h3 {
    color: var(--primary-dark);
    margin-top: 0;
    margin-bottom: 20px;
    border-bottom: 2px solid rgba(27, 122, 88, 0.1);
    padding-bottom: 10px;
}

/* 5. FORM INPUT & TOMBOL UMUM */
.form-group { margin-bottom: 15px; }
.form-group label { display: block; margin-bottom: 8px; font-weight: 500; color: var(--primary-dark); font-size: 14px; }
.form-control { 
    width: 100%; padding: 12px 15px; border-radius: 8px; 
    border: 1px solid rgba(0,0,0,0.1); background: rgba(255, 255, 255, 0.8); 
    font-family: inherit; font-size: 14px; color: var(--text-dark); transition: all 0.3s;
}
.form-control:focus { outline: none; border-color: var(--primary-light); box-shadow: 0 0 0 3px rgba(27, 122, 88, 0.2); background: #fff; }

.btn { padding: 10px 18px; background: var(--primary-light); color: white; border: none; border-radius: 8px; cursor: pointer; transition: 0.3s; font-family: inherit; font-weight: 500; }
.btn:hover { background: var(--primary-dark); transform: translateY(-2px); box-shadow: 0 4px 10px rgba(0,0,0,0.2); }

/* SCROLLBAR ELEGAN MAC-STYLE */
::-webkit-scrollbar { width: 8px; height: 8px; }
::-webkit-scrollbar-track { background: rgba(255, 255, 255, 0.05); }
::-webkit-scrollbar-thumb { background: rgba(255, 255, 255, 0.3); border-radius: 10px; }
::-webkit-scrollbar-thumb:hover { background: var(--accent-gold); }
/* =========================================================
   8. WATERMARK LOGO MASJID (DI BELAKANG KACA)
   ========================================================= */
body::before {
    content: "";
    position: fixed;
    top: 50%;
    left: 55%; /* Agak digeser ke kanan sedikit untuk menyeimbangkan posisi sidebar */
    transform: translate(-50%, -50%);
    width: 60vw;       /* Lebar logo raksasa menyesuaikan layar */
    height: 60vh;      /* Tinggi logo raksasa menyesuaikan layar */
    max-width: 700px;  /* Batas maksimal besarnya logo */
    max-height: 700px;
    
    /* Ganti path ini jika lokasi/nama logo Anda berbeda */
    background-image: url('assets/img/logo.png'); 
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    
    /* TINGKAT KETIPISAN (4% SAJA AGAR ELEGAN & TIDAK MENGGANGGU) */
    opacity: 0.04;     
    
    /* Z-Index -1 memaksa watermark berada di lapisan PALING BAWAH */
    z-index: -1;       
    
    /* Pointer-events: none mencegah logo ini menghalangi klik admin (tembus pandang klik) */
    pointer-events: none; 
}

/* Penyesuaian Watermark Khusus untuk Layar HP */
@media (max-width: 768px) {
    body::before {
        left: 50%; /* Di HP dikembalikan ke tepat di tengah karena tidak ada sidebar tetap */
        width: 80vw;
        height: 80vh;
        opacity: 0.15; /* Di HP dibuat sedikit lebih tipis agar teks lebih aman */
    }
}
/* Sembunyikan tombol hamburger dan overlay di layar Laptop/Komputer */
.btn-menu-mobile { display: none; }
.sidebar-overlay { display: none; }

/* =========================================================
   9. RESPONSIVE MOBILE (HAMBURGER MENU - SLIDE IN)
   ========================================================= */
@media (max-width: 768px) {
    body { display: block; }
    
    /* Tombol Garis Tiga (Hamburger) muncul di HP */
    .btn-menu-mobile {
        display: inline-block;
        background: transparent;
        border: none;
        color: #fff;
        font-size: 22px;
        cursor: pointer;
        padding: 5px;
        transition: 0.3s;
    }
    .btn-menu-mobile:active { transform: scale(0.9); }

    /* Topbar disesuaikan agar rapi di HP */
    .topbar {
        padding: 15px 20px;
    }
    
    /* 1. Sembunyikan Sidebar ke luar layar sebelah kiri */
    .sidebar {
        position: fixed;
        top: 0;
        left: -280px; /* Tersembunyi */
        width: 260px;
        height: 100vh;
        z-index: 1000;
        transition: 0.4s cubic-bezier(0.4, 0, 0.2, 1);
        /* Warna solid sedikit digelapkan agar menu terbaca jelas di HP */
        background: rgba(15, 82, 58, 0.98); 
        box-shadow: 5px 0 15px rgba(0,0,0,0.2);
    }
    
    /* 2. Saat tombol diklik, class 'active' menggeser sidebar masuk ke layar */
    .sidebar.active {
        left: 0;
    }
    
    /* Sidebar Menu dikembalikan menurun (Vertical) */
    .sidebar-menu li a {
        padding: 15px 25px;
        border-bottom: 1px solid rgba(255,255,255,0.05);
    }

    /* 3. Efek Layar Gelap (Overlay) saat menu terbuka */
    .sidebar-overlay {
        display: block;
        position: fixed;
        top: 0; left: 0; width: 100%; height: 100vh;
        background: rgba(0, 0, 0, 0.6);
        z-index: 999;
        opacity: 0;
        visibility: hidden;
        transition: 0.4s ease;
    }
    .sidebar-overlay.active {
        opacity: 1;
        visibility: visible;
    }

    /* Area Konten Utama dilebarkan penuh */
    .main-content { margin-left: 0; width: 100%; }
    .content { padding: 15px; }
    .card-form { padding: 15px; }
    
    /* Tabel bisa digeser pakai jari agar tidak pecah */
    table { display: block; width: 100%; overflow-x: auto; white-space: nowrap; -webkit-overflow-scrolling: touch; }
    div[style*="display: flex; gap: 20px; flex-wrap: wrap;"] { flex-direction: column; }
}
