/* [DIUBAH] Variabel warna hijau diganti biru */
        :root {
            --primary-blue: #3B82F6; /* blue-500 */
            --primary-blue-dark: #1D4ED8; /* blue-700 */
            --primary-blue-light: #DBEAFE; /* blue-100 */
            --text-dark: #1f2937; /* Gray 800 */
            --text-medium: #4b5563; /* Gray 600 */
            --text-light: #6b7280; /* Gray 500 */
            --bg-light: #f9fafb; /* Gray 50 */
            --card-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.05), 0 8px 10px -6px rgba(0, 0, 0, 0.05);
            --card-shadow-hover: 0 20px 35px -8px rgba(0, 0, 0, 0.1), 0 10px 15px -8px rgba(0, 0, 0, 0.08);
        }
        body {
            /* [DIUBAH] Font Poppins diganti Inter */
            font-family: 'Inter', sans-serif;
            background-color: var(--bg-light);
            color: var(--text-medium); /* [BARU] Tambahan dari index */
            overflow-x: hidden; /* [BARU] Tambahan dari index */
        }
         /* [BARU] Style glass-effect dari index.html */
        .glass-effect {
            background-color: rgba(255, 255, 255, 0.8);
            backdrop-filter: blur(20px) saturate(180%);
            -webkit-backdrop-filter: blur(20px) saturate(180%);
        }
        /* [DIHAPUS] .header-nav tidak dipakai lagi */

        /* [DIUBAH] nav-link disamakan dengan index.html */
        .nav-link { position: relative; padding: 0.25rem 0; }
        .nav-link::after {
            content: '';
            position: absolute;
            bottom: -4px;
            left: 0;
            width: 100%;
            height: 3px;
            background-color: var(--primary-blue); /* [DIUBAH] green -> blue */
            border-radius: 2px;
            transform: scaleX(0);
            transform-origin: bottom right;
            transition: transform 0.3s ease-out;
        }
        .nav-link:hover::after, .nav-link.active::after {
            transform: scaleX(1);
            transform-origin: bottom left;
        }
         /* [BARU] Style nav-link active dari index.html */
        .nav-link.active { color: var(--primary-blue-dark); font-weight: 600; }

        #user-profile-dropdown.active { 
            opacity: 1; 
            /* [DIHAPUS] Transform tidak diperlukan lagi */
        }
        /* [DIUBAH] Modal style disamakan dengan index */
        .modal-overlay { 
            background-color: rgba(0, 0, 0, 0.4); 
            backdrop-filter: blur(12px); 
            -webkit-backdrop-filter: blur(12px); 
        }
        .modal-content { 
            background: rgba(255, 255, 255, 0.95); 
            border-radius: 1.5rem; 
            border: 1px solid rgba(0,0,0,0.05);
            width: 100%; 
            transform: scale(0.95) translateY(10px);  
            transition: transform 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275); 
            max-height: 90vh; 
            overflow-y: auto; 
        }
        .modal-transition.active .modal-content { 
            transform: scale(1) translateY(0); 
        }

        @keyframes pulse-glow { 0%, 100% { transform: scale(1); box-shadow: 0 0 10px var(--glow-color-strong), 0 0 20px var(--glow-color-strong), 0 0 30px var(--glow-color); } 50% { transform: scale(1.02); box-shadow: 0 0 20px var(--glow-color-strong), 0 0 40px var(--glow-color-strong), 0 0 60px var(--glow-color); } }
        .status-display { text-align: center; padding: 1.5rem 1rem; border-radius: 1rem; transition: all 0.3s ease; position: relative; overflow: hidden; }
        .status-display.animate-glow { animation: pulse-glow 3s infinite ease-in-out; }

        @keyframes card-enter {
            from {
                opacity: 0;
                transform: translateY(20px) scale(0.98);
            }
            to {
                opacity: 1;
                transform: translateY(0) scale(1);
            }
        }
        /* [DIUBAH] .facility-card disamakan dengan .card-container dari ekskul */
        .facility-card {
            animation: card-enter 0.5s ease-out forwards;
            opacity: 0; /* Mulai dari tidak terlihat */
            perspective: 1000px; /* [BARU] Ditambahkan dari ekskul */
        }
        
        /* [DIUBAH] .facility-card-inner disamakan dengan .card-inner dari ekskul */
        .facility-card-inner {
            position: relative; /* [BARU] Ditambahkan dari ekskul */
            width: 100%; /* [BARU] Ditambahkan dari ekskul */
            height: 100%; /* [BARU] Ditambahkan dari ekskul */
            transform-style: preserve-3d; /* [BARU] Ditambahkan dari ekskul */
            transition: transform 0.6s, box-shadow 0.6s; /* [DIUBAH] Transisi disamakan */
            /* Style dari .facility-card-inner lama (background, dll) dipindah ke .card-front */
        }
        
         /* [DIUBAH] Shadow hover disesuaikan dengan ekskul */
        .facility-card:hover .facility-card-inner {
            transform: translateY(-8px);
            box-shadow: 0 25px 50px -12px rgba(59, 130, 246, 0.25); /* Biru, disamakan ekskul */
        }

        /* [DIHAPUS] Style .facility-card-inner (dari [BARU] Style section-card) dihapus karena pindah ke .card-front */
        
        /* [BARU] Style Card Flip dari /ekstrakurikuler/ */
        .card-front, .card-back {
            position: absolute;
            width: 100%;
            height: 100%;
            -webkit-backface-visibility: hidden;
            backface-visibility: hidden;
            border-radius: 1.25rem; /* rounded-2xl */
        }

        .card-front {
            /* Mengambil style dari .facility-card-inner lama */
            background-color: rgba(255, 255, 255, 0.9);
            backdrop-filter: blur(10px);
            -webkit-backdrop-filter: blur(10px);
            border: 1px solid rgba(0,0,0,0.05);
            box-shadow: var(--card-shadow); 
            
            z-index: 2;
            transition: all 0.5s ease-in-out;
            
            /* Menambahkan flex untuk konten (dari .facility-card-inner lama) */
            display: flex;
            flex-direction: column;
            /* padding, items-center, dll akan ada di HTML/JS */
        }
        
        .facility-card:hover .card-front {
            opacity: 0;
            transform: translateY(100%);
        }

        .card-back {
            background-color: #1e293b; /* slate-800 */
            z-index: 1;
            overflow: hidden;
        }
        
        .card-back .slide {
            position: absolute;
            width: 100%;
            height: 100%;
            object-fit: cover;
            opacity: 0;
            animation: kenburns-slideshow 20s infinite;
        }
        
        .card-back .slide:nth-child(1) { animation-delay: 0s; }
        .card-back .slide:nth-child(2) { animation-delay: 5s; }
        .card-back .slide:nth-child(3) { animation-delay: 10s; }
        .card-back .slide:nth-child(4) { animation-delay: 15s; }

        @keyframes kenburns-slideshow {
            0%, 25%, 100% { opacity: 0; transform: scale(1.1) rotate(2deg); }
            5% { opacity: 1; }
            20% { opacity: 1; transform: scale(1) rotate(0deg); }
        }
        
        .card-back-overlay {
            position: absolute;
            inset: 0;
            background: linear-gradient(to top, rgba(0,0,0,0.9) 0%, rgba(0,0,0,0.1) 60%);
            display: flex;
            flex-direction: column;
            justify-content: flex-end;
            padding: 1.5rem; /* p-6 */
        }
        /* [AKHIR BARU] */

        #gallery-modal-grid img {
            transition: transform 0.3s ease, filter 0.3s ease;
        }
        #gallery-modal-grid img:hover {
            transform: scale(1.08);
            filter: brightness(1.1);
        }
        .viewer-nav-btn { position: absolute; top: 50%; transform: translateY(-50%); color: white; background-color: rgba(0,0,0,0.3); border-radius: 50%; width: 3rem; height: 3rem; display: flex; align-items: center; justify-content: center; font-size: 1.5rem; transition: background-color 0.2s; cursor: pointer; z-index: 100; }
        .viewer-nav-btn:hover { background-color: rgba(0,0,0,0.6); }
        #viewer-image { transition: transform 0.3s ease-in-out, opacity 0.3s ease-in-out; }


        /* [BARU] Style navigasi bawah dari index.html */
        .nav-container { 
            padding: 0.5rem; /* p-2 */ 
        }
        .mobile-nav {
            display: flex;
            justify-content: space-around; 
            align-items: center;
            height: 100%;
            width: 100%;
            margin-left: auto;
            margin-right: auto;
            border-radius: 1rem; /* rounded-2xl */
            border: 1px solid rgba(229, 231, 235, 0.5); 
            box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06); 
        }
        .mobile-nav .nav-item {
            position: relative;
            isolation: isolate;
            display: flex;
            flex-direction: column;
            align-items: center;
            justify-content: center;
            text-align: center;
            color: var(--text-medium); 
            padding: 0.75rem 0.25rem; 
            width: 20%; 
            height: 100%;
            transition: color 0.2s ease-out, transform 0.2s ease-out;
            cursor: pointer;
            text-decoration: none; 
            gap: 0.25rem; 
        }
        .mobile-nav .nav-item .fa-solid, .mobile-nav .nav-item .fas {
             font-size: 1.5rem; /* 24px */
             height: 1.5rem; 
        }
        .mobile-nav .nav-item .nav-text {
            font-size: 0.7rem; 
            line-height: 1;
            white-space: nowrap;
            overflow: hidden;
            text-overflow: ellipsis;
            width: 100%; 
        }
        .mobile-nav .nav-item:hover {
            transform: translateY(-2px);
            color: var(--primary-blue-dark); 
        }
        .mobile-nav .nav-item:active, 
        .mobile-nav .nav-item.active { 
            color: var(--primary-blue-dark);
            font-weight: 600;
            transform: translateY(-2px);
        }
        /* [AKHIR BARU] Style navigasi bawah */
