.game-map-container {
    width: 100%;
    margin: 0;
    padding: 0;
}

/* Menghilangkan margin atas bawaan Astra atau tema pada layar besar */
@media (min-width: 1200px) {
    .site-content {
        padding-top: 0 !important;
    }
    .entry-content {
        margin-top: 0 !important;
    }
    #primary {
        margin-top: 0 !important;
    }
}

.game-map {
    position: relative;
    width: 100%;
    /* Mengubah ke Portrait (kebalikan dari 16/9, misalnya 9/16 atau menyesuaikan konten) */
    aspect-ratio: 9 / 16;
    max-width: 600px; /* Batasi lebar maksimal agar tidak terlalu tinggi di desktop */
    margin: 0 auto;
    
    /* Background gradasi coklat sesuai permintaan */
    background: linear-gradient(135deg, #d1a84f 0%, #bd930b 50%, #d1a84f 100%);
    background-image: 
        radial-gradient(circle at 30% 20%, rgba(255,255,255,0.1) 0%, transparent 50%),
        linear-gradient(135deg, #d1a84f 0%, #bd930b 50%, #d1a84f 100%),
        url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.65' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)'/%3E%3C/svg%3E");
    background-blend-mode: overlay, normal, multiply;
    
    border: 10px solid #5d4037;
    border-radius: 0; /* Menghilangkan radius untuk kesan full paper */
    box-shadow: inset 0 0 50px rgba(0,0,0,0.3);
    overflow: hidden;
}

.map-location {
    position: absolute;
    cursor: pointer;
    transition: transform 0.3s ease, filter 0.3s ease;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    z-index: 10;
}

.map-location:hover {
    transform: scale(1.1) rotate(2deg);
    filter: sepia(0.3) brightness(1.1);
}

.location-icon {
    font-size: 48px;
    margin-bottom: 5px;
    filter: drop-shadow(3px 3px 2px rgba(0,0,0,0.4));
}

.location-label {
    background: #f4e4bc;
    padding: 4px 12px;
    border-radius: 2px;
    font-weight: bold;
    font-size: 14px;
    font-family: 'Courier New', Courier, monospace;
    color: #4e342e;
    box-shadow: 2px 2px 5px rgba(0,0,0,0.2);
    border: 1px solid #8d6e63;
    white-space: nowrap;
}

/* Positioning Locations - Adjusted for Portrait Layout */

.gedung-sekolah {
    top: 25%;
    left: 50%;
    transform: translateX(-50%);
}

.aula-sekolah {
    top: 10%;
    left: 20%;
}

.kantin {
    top: 45%;
    right: 15%;
}

.taman-sekolah {
    top: 60%;
    left: 15%;
}

.pohon {
    top: 75%;
    right: 20%;
}

.sungai {
    bottom: 0;
    width: 100%;
    height: 80px;
    background: rgba(79, 195, 247, 0.2);
    border-top: 2px dashed #5d4037;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 5;
}

/* Responsive adjustments */
@media (max-width: 600px) {
    .game-map {
        aspect-ratio: auto;
        min-height: 100vh;
    }
    .location-icon {
        font-size: 40px;
    }
}
