/* MGS 2.3 INDONESIA - CYBERPUNK THEME */
:root {
    --neon-blue: #00f3ff;
    --neon-orange: #ff9e00;
    --neon-purple: #bd00ff;
    --bg-dark: #050a14;
    --bg-darker: #02050a;
    --text-light: #e6f1ff;
    --card-bg: rgba(6, 21, 41, 0.8);
    --ad-placeholder: #1a1a2e;
}

* { margin: 0; padding: 0; box-sizing: border-box; scrollbar-width: thin; scrollbar-color: var(--neon-blue) var(--bg-darker); }
html { scroll-behavior: smooth; }
body {
    font-family: 'Orbitron', 'Rajdhani', sans-serif;
    background-color: var(--bg-dark);
    color: var(--text-light);
    overflow-x: hidden;
    min-height: 100vh;
    display: flex;
    flex-direction: column;
    background-image: 
        linear-gradient(rgba(0, 243, 255, 0.03) 1px, transparent 1px),
        linear-gradient(90deg, rgba(0, 243, 255, 0.03) 1px, transparent 1px),
        radial-gradient(circle at center, rgba(189, 0, 255, 0.1) 0%, rgba(5, 10, 20, 1) 70%);
    background-size: 50px 50px, 50px 50px, 100% 100%;
}

/* LAYOUT */
.main-wrapper { display: flex; flex: 1; position: relative; padding-top: 80px; }
.sidebar-ad { width: 160px; background: var(--ad-placeholder); display: flex; justify-content: center; align-items: center; border: 1px solid rgba(0, 243, 255, 0.2); position: sticky; top: 90px; height: calc(100vh - 100px); margin: 10px; display: none; }
.sidebar-ad span { transform: rotate(-90deg); white-space: nowrap; color: #555; letter-spacing: 2px;}
.content-container { flex: 1; padding: 20px; max-width: 1200px; margin: 0 auto; }

/* NAV */
.navbar { position: fixed; top: 0; width: 100%; height: 80px; background: rgba(2, 5, 10, 0.95); border-bottom: 2px solid var(--neon-blue); display: flex; justify-content: space-between; align-items: center; padding: 0 30px; z-index: 1000; backdrop-filter: blur(10px); }
.navbar::after { content: ''; position: absolute; bottom: -2px; left: 0; width: 30%; height: 2px; background: linear-gradient(90deg, transparent, var(--neon-blue), var(--neon-purple), transparent); animation: moving-glow 4s linear infinite; }
@keyframes moving-glow { 0% { left: -30%; } 100% { left: 100%; } }
.nav-logo { height: 60px; filter: drop-shadow(0 0 5px var(--neon-blue)); }
.nav-center { position: absolute; left: 50%; transform: translateX(-50%); }
#digital-clock { font-family: 'Orbitron', monospace; font-size: 1.2rem; color: var(--neon-blue); text-shadow: 0 0 10px var(--neon-blue); border: 1px solid rgba(0, 243, 255, 0.3); padding: 5px 15px; border-radius: 5px; background: rgba(0,0,0,0.3); }
.nav-links { display: flex; list-style: none; }
.nav-links li { margin-left: 25px; }
.nav-links a { color: var(--text-light); text-decoration: none; text-transform: uppercase; font-weight: bold; letter-spacing: 1px; padding: 10px 15px; transition: all 0.3s ease; position: relative; }
.nav-links a:hover, .nav-links a.active { color: var(--neon-blue); text-shadow: 0 0 10px var(--neon-blue); }
.nav-links a.active::before { content: ''; position: absolute; bottom: 0; left: 10%; width: 80%; height: 2px; background: var(--neon-blue); box-shadow: 0 0 10px var(--neon-blue); }
.hamburger { display: none; cursor: pointer; color: var(--neon-blue); font-size: 1.8rem; }

/* BANNER & CARDS */
.hero-banner { width: 100%; height: 350px; position: relative; overflow: hidden; margin-bottom: 30px; border-bottom: 3px solid var(--neon-purple); box-shadow: 0 10px 30px rgba(189, 0, 255, 0.2); }
.banner-img { width: 100%; height: 100%; object-fit: cover; filter: brightness(0.7) contrast(1.2); }
.banner-overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: linear-gradient(0deg, var(--bg-dark) 0%, transparent 50%); pointer-events: none; }
.cyber-container { background: var(--card-bg); border: 1px solid rgba(0, 243, 255, 0.1); padding: 30px; margin-bottom: 30px; position: relative; overflow: hidden; box-shadow: 0 0 20px rgba(0,0,0,0.5); }
.cyber-container::before { content: ''; position: absolute; top: 0; left: 0; width: 30px; height: 30px; border-top: 2px solid var(--neon-blue); border-left: 2px solid var(--neon-blue); }
.cyber-container::after { content: ''; position: absolute; bottom: 0; right: 0; width: 30px; height: 30px; border-bottom: 2px solid var(--neon-purple); border-right: 2px solid var(--neon-purple); }
h1.cyber-title { font-size: 2.5rem; background: linear-gradient(45deg, var(--neon-blue), var(--neon-purple)); -webkit-background-clip: text; -webkit-text-fill-color: transparent; text-shadow: 0 0 20px rgba(0, 243, 255, 0.4); text-transform: uppercase; margin-bottom: 20px; }
h2.cyber-heading { color: var(--neon-orange); border-left: 5px solid var(--neon-orange); padding-left: 15px; text-shadow: 0 0 10px rgba(255, 158, 0, 0.5); text-transform: uppercase; margin-bottom: 20px;}
p { line-height: 1.6; margin-bottom: 15px; color: #a0b0c0; }
ul.cyber-list { list-style: none; padding-left: 20px; }
ul.cyber-list li { margin-bottom: 10px; position: relative; }
ul.cyber-list li::before { content: '>'; color: var(--neon-blue); position: absolute; left: -20px; font-weight: bold; }

/* DOWNLOADS */
.download-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 25px; }
.cyber-card { background: linear-gradient(135deg, rgba(6, 21, 41, 0.9), rgba(20, 10, 30, 0.9)); border: 1px solid var(--neon-blue); padding: 20px; display: flex; flex-direction: column; transition: transform 0.3s, box-shadow 0.3s; position: relative; }
.cyber-card:hover { transform: translateY(-10px); box-shadow: 0 0 30px rgba(0, 243, 255, 0.4); border-color: var(--neon-purple); }
.card-badge { position: absolute; top: -10px; right: -10px; background: var(--neon-purple); color: white; padding: 5px 10px; font-size: 0.8rem; transform: skewX(-15deg); box-shadow: 0 0 10px var(--neon-purple); }
.card-title { color: var(--neon-blue); font-size: 1.4rem; margin-bottom: 10px; text-transform: uppercase; }
.cyber-btn { display: inline-block; padding: 12px 25px; background: transparent; border: 2px solid var(--neon-blue); color: var(--neon-blue); text-transform: uppercase; text-decoration: none; font-weight: bold; letter-spacing: 2px; position: relative; overflow: hidden; transition: all 0.3s; text-align: center; margin-top: 15px; cursor: pointer; }
.cyber-btn:hover { background: var(--neon-blue); color: var(--bg-dark); box-shadow: 0 0 30px var(--neon-blue); }

/* ADS & FOOTER */
.ad-container-horizontal { width: 100%; max-width: 970px; height: 90px; background: var(--ad-placeholder); border: 1px dashed #333; margin: 20px auto; display: flex; justify-content: center; align-items: center; color: #555; }
.sticky-ad-footer { position: fixed; bottom: 60px; left: 0; width: 100%; height: 70px; background: var(--ad-placeholder); border-top: 2px solid var(--neon-purple); z-index: 900; display: flex; justify-content: center; align-items: center; color: #777; box-shadow: 0 -5px 20px rgba(0,0,0,0.8); }
.popup-ad-overlay { position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0,0,0,0.8); z-index: 9999; display: none; justify-content: center; align-items: center; backdrop-filter: blur(5px); }
.popup-ad-content { width: 80%; max-width: 600px; height: 400px; background: var(--ad-placeholder); border: 3px solid var(--neon-orange); box-shadow: 0 0 50px var(--neon-orange); position: relative; display: flex; justify-content: center; align-items: center; color: white; font-size: 2rem; }
.popup-close { position: absolute; top: -20px; right: -20px; width: 40px; height: 40px; background: var(--neon-orange); border-radius: 50%; display: flex; justify-content: center; align-items: center; cursor: pointer; font-weight: bold; box-shadow: 0 0 10px var(--neon-orange); }
.site-footer { background: rgba(2, 5, 10, 1); padding: 20px 30px; border-top: 2px solid var(--neon-blue); display: flex; justify-content: space-between; align-items: center; font-size: 0.9rem; position: relative; z-index: 100; box-shadow: 0 -10px 30px rgba(0, 243, 255, 0.1); }
.footer-links a { color: #a0b0c0; text-decoration: none; margin-left: 20px; transition: color 0.3s; }
.footer-links a:hover { color: var(--neon-blue); }
.heartbeat { color: red; animation: heartbeat 1.2s infinite; display: inline-block; margin: 0 5px; text-shadow: 0 0 10px red; }
@keyframes heartbeat { 0% { transform: scale(1); } 25% { transform: scale(1.2); } 50% { transform: scale(1); } 75% { transform: scale(1.2); } 100% { transform: scale(1); } }
#adblock-overlay { position: fixed; top: 0; left: 0; width: 30%; height: 30%; background: var(--bg-darker); z-index: 10000; display: none; flex-direction: column; justify-content: center; align-items: center; text-align: center; padding: 50px; }
#adblock-overlay h2 { color: red; text-shadow: 0 0 20px red; font-size: 3rem;}

/* RESPONSIVE */
@media (min-width: 1200px) { .sidebar-ad { display: flex; } }
@media (max-width: 992px) {
    .navbar { padding: 0 20px; } .nav-links { display: none; } .hamburger { display: block; } .nav-center { display: none; }
    .nav-links.mobile-active { display: flex; flex-direction: column; position: absolute; top: 80px; left: 0; width: 100%; background: var(--bg-darker); padding: 20px 0; border-bottom: 2px solid var(--neon-blue); }
    .nav-links.mobile-active li { margin: 15px 0; text-align: center; }
}
@media (max-width: 768px) {
    .main-wrapper { flex-direction: column; } .sidebar-ad { display: none; } .hero-banner { height: 200px; }
    h1.cyber-title { font-size: 1.8rem; } .site-footer { flex-direction: column; padding: 15px; text-align: center;}
    .footer-links { margin-top: 15px; } .footer-links a { margin: 0 10px; } .sticky-ad-footer { bottom: 90px; height: 60px; }
}

/* Container Iklan Responsif */
.ad-slot-wrapper {
    display: flex;
    justify-content: center;
    align-items: center;
    overflow: hidden;
    width: 100%;
    height: 100%;
}

/* Penyesuaian Iklan Samping untuk Layar Kecil */
@media (max-width: 1200px) {
    .sidebar-ad { display: none !important; }
}

/* Sticky Ad Mobile Adjustment */
@media (max-width: 768px) {
    .sticky-ad-footer {
        height: 50px;
        bottom: 100px; /* Di atas footer mobile */
    }
}

.neon-btn {
    position: relative;
    display: inline-block;
    padding: 12px 28px;
    color: #00f7ff;
    text-decoration: none;
    text-transform: uppercase;
    letter-spacing: 2px;
    font-weight: bold;
    overflow: hidden;
    border-radius: 8px;
    transition: 0.3s;
}

/* Background blur glow */
.neon-btn::before {
    content: "";
    position: absolute;
    inset: -2px;
    background: linear-gradient(
        45deg,
        #00f7ff,
        #ff00ff,
        #00ff88,
        #00f7ff
    );
    background-size: 400%;
    z-index: -1;
    border-radius: 10px;
    animation: neon-border 8s linear infinite;
    filter: blur(8px);
}

/* Inner background */
.neon-btn::after {
    content: "";
    position: absolute;
    inset: 2px;
    background: #0f0f0f;
    border-radius: 6px;
    z-index: -1;
}

/* Hover effect */
.neon-btn:hover {
    color: #fff;
    text-shadow: 0 0 10px #00f7ff,
                 0 0 20px #00f7ff,
                 0 0 40px #00f7ff;
}

/* Animation */
@keyframes neon-border {
    0% { background-position: 0% 50%; }
    100% { background-position: 400% 50%; }
}

.neon-btn2 {
    position: relative;
    display: inline-block;
    padding: 12px 28px;
    color: #00f7ff;
    text-decoration: none;
    text-transform: uppercase;
    letter-spacing: 2px;
    font-weight: bold;
    overflow: hidden;
    border-radius: 8px;
    transition: 0.3s;
}

/* Background blur glow */
.neon-btn2::before {
    content: "";
    position: absolute;
    inset: -2px;
    background: linear-gradient(
        45deg,
        #ffffff,
        #a0b0c0
    );
    background-size: 400%;
    z-index: -1;
    border-radius: 10px;
    animation: neon-border2 8s linear infinite;
    filter: blur(8px);
}

/* Inner background */
.neon-btn2::after {
    content: "";
    position: absolute;
    inset: 2px;
    background: #0f0f0f;
    border-radius: 6px;
    z-index: -1;
}

/* Hover effect */
.neon-btn2:hover {
    color: #fff;
    text-shadow: 0 0 10px #00f7ff,
                 0 0 20px #00f7ff,
                 0 0 40px #00f7ff;
}

/* Animation */
@keyframes neon-border2 {
    0% { background-position: 0% 50%; }
    100% { background-position: 400% 50%; }
}

.neon-btn3 {
    position: relative;
    display: inline-block;
    padding: 12px 28px;
    color: #00f7ff;
    text-decoration: none;
    text-transform: uppercase;
    letter-spacing: 2px;
    font-weight: bold;
    overflow: hidden;
    border-radius: 8px;
    transition: 0.3s;
}

/* Background blur glow */
.neon-btn3::before {
    content: "";
    position: absolute;
    inset: -2px;
    background: linear-gradient(
        45deg,
        #fff000,
        #ff0aaa,
        #00ff88
    );
    background-size: 400%;
    z-index: -1;
    border-radius: 10px;
    animation: neon-border3 8s linear infinite;
    filter: blur(8px);
}

/* Inner background */
.neon-btn3::after {
    content: "";
    position: absolute;
    inset: 2px;
    background: #0f0f0f;
    border-radius: 6px;
    z-index: -1;
}

/* Hover effect */
.neon-btn3:hover {
    color: #fff;
    text-shadow: 0 0 10px #00f7ff,
                 0 0 20px #00f7ff,
                 0 0 40px #00f7ff;
}

/* Animation */
@keyframes neon-border3 {
    0% { background-position: 0% 50%; }
    100% { background-position: 400% 50%; }
}

.logo-wrapper {
    display: flex;
    align-items: center;
    text-decoration: none;
}

.logo-text {
    margin-left: 10px;
    font-size: 18px;
    font-weight: bold;
    color: white; /* sesuaikan dengan tema */
    letter-spacing: 1px;
}

.nav-logo {
    height: 40px; /* sesuaikan ukuran logo */
}

.contact-item {
  display: flex;
  align-items: center; /* bikin sejajar vertikal */
  gap: 15px; /* jarak icon dan text */
  margin: 10px 0;
}

.contact-item i {
  font-size: 35px; /* atur ukuran icon */
  color: white;
}

.contact-item a {
  color: white;
  text-decoration: none;
  font-size: 18px;
}

.contact-item a:hover {
  text-decoration: underline;
}

.cyber-btn a {
  text-decoration: none;   /* hilangkan underline */
  color: inherit;          /* ikut warna tombol, bukan warna biru default */
}

.cyber-btn a:hover {
  text-decoration: none;   /* pastikan tetap tidak underline saat hover */
  color: inherit;
}

/* Neon text effect */
.neon-text {
    color: #fff;
    font-weight: bold;
    cursor: pointer;
    text-shadow:
        0 0 5px #f0f, 
        0 0 10px #0ff, 
        0 0 20px #f0f, 
        0 0 40px #0ff;
    transition: all 0.3s ease;
}
.neon-text:hover {
    text-shadow:
        0 0 10px #f0f,
        0 0 20px #0ff,
        0 0 30px #f0f,
        0 0 50px #0ff;
}

/* Popup background */
.popup {
    display: none;
    position: fixed;
    z-index: 999;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: rgba(0,0,0,0.7);
    backdrop-filter: blur(5px);
    animation: fadeIn 0.4s;
}

/* Popup content */
.popup-content {
    position: relative;
    margin: 10% auto;
    padding: 20px;
    width: 250px;
    background: #111;
    border-radius: 15px;
    text-align: center;
    animation: scaleUp 0.4s ease;
    box-shadow: 0 0 20px #f0f, 0 0 40px #0ff, 0 0 60px #f0f;
}

.popup-content img {
    width: 150px;
    height: 150px;
    border-radius: 50%;
    border: 3px solid #fff;
}

/* Close button */
.popup .close {
    position: absolute;
    top: 10px;
    right: 15px;
    color: #fff;
    font-size: 24px;
    cursor: pointer;
}

/* Animations */
@keyframes fadeIn {
    from {opacity: 0;}
    to {opacity: 1;}
}

@keyframes scaleUp {
    from {transform: scale(0.7);}
    to {transform: scale(1);}
}

/* NEWS CARDS WITH INTERACTIVE ZOOM */
.news-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 25px; margin-top: 20px; }
.news-card { background: #0a0f1a; border: 1px solid #1a2a4a; overflow: hidden; position: relative; transition: all 0.4s ease; display: flex; flex-direction: column; }
.news-card:hover { border-color: var(--neon-purple); transform: translateY(-8px); box-shadow: 0 10px 30px rgba(189,0,255,0.3); }

/* Efek Container Gambar */
.thumb-wrapper { width: 100%; height: 180px; overflow: hidden; position: relative; border-bottom: 2px solid var(--neon-blue); }
.news-thumb { width: 100%; height: 100%; object-fit: cover; filter: brightness(0.7); transition: transform 0.6s ease, filter 0.6s ease; }

/* Efek Hover Zoom */
.news-card:hover .news-thumb { transform: scale(1.15) rotate(1deg); filter: brightness(1.1); }

.news-info { padding: 20px; flex: 1; display: flex; flex-direction: column; background: linear-gradient(180deg, rgba(10,15,26,0) 0%, rgba(10,15,26,1) 100%); }
.badge { background: var(--neon-purple); color: white; padding: 4px 12px; font-size: 0.65rem; position: absolute; top: 15px; right: 15px; font-weight: bold; z-index: 10; text-transform: uppercase; letter-spacing: 1px; box-shadow: 0 0 10px var(--neon-purple); }